欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

激光點云渲染方法和裝置與流程

文檔序號:12675840閱讀:557來源:國知局
激光點云渲染方法和裝置與流程

本發(fā)明涉及數(shù)據(jù)處理領域,具體而言,涉及激光點云渲染方法和裝置。



背景技術:

目前AutoCAD平臺支持將第三方點云格式數(shù)據(jù)轉換為自身支持的PCG點云格式進行加載管理和渲染顯示。AutoCAD支持多種第三方點云數(shù)據(jù)格式轉換:fls、xyz、xyb、txt、asc、LAS、pts、ptg、ptx、clr、cl3等,上數(shù)據(jù)無論數(shù)據(jù)量大小均轉換為AutoCAD支持的PCG點云數(shù)據(jù)文件。AutoCAD在加載PCG點云數(shù)據(jù)的過程中,會創(chuàng)建AutoCAD點云對象與對應PCG點云文件進行關聯(lián),以便于進行數(shù)據(jù)管理。AutoCAD會針對每個PCG點云對象綁定唯一的渲染器,用于三維視窗中的點云渲染顯示瀏覽過程。

AutoCAD是專業(yè)的計算機輔助設計軟件,目前很多的企事業(yè)單位使用該軟件進行建模測圖生產(chǎn)作業(yè)。目前該軟件僅支持PCG格式點云數(shù)據(jù)管理,生產(chǎn)作業(yè)效率較低。



技術實現(xiàn)要素:

本發(fā)明提供的激光點云渲染方法和裝置,旨在改善上述問題。

本發(fā)明提供的一種激光點云渲染方法,用于對基于AutoCAD的三維激光點云渲染。所述方法包括:根據(jù)所述AutoCAD中的所有格式的點云數(shù)據(jù)生成標準點云文件,其中,所述標準點云格式包括:PCG格式點云數(shù)據(jù)、所述AutoCAD的視窗范圍和預設的點云顯示閾值。根據(jù)所述PCG格式點云數(shù)據(jù)、所述視窗范圍和點云顯示閾值統(tǒng)計所述三維視窗加載顯示的點云中的待渲染點。將所獲取的點云中的待渲染點添加到所述AutoCAD點云對象中,渲染所述點云。

本發(fā)明提供的一種激光點云渲染裝置,用于對基于AutoCAD的三維激光點云渲染。所述裝置包括:根據(jù)所述AutoCAD中的所有格式的點云數(shù)據(jù)生成標準點云文件,其中,所述標準點云格式包括:PCG格式點云數(shù)據(jù)、所述AutoCAD的視窗范圍和預設的點云顯示閾值。根據(jù)所述PCG格式點云數(shù)據(jù)、所述視窗范圍和點云顯示閾值統(tǒng)計所述三維視窗加載顯示的點云中的待渲染點。將所獲取的點云中的待渲染點添加到所述AutoCAD點云對象中,渲染所述點云。

上述本發(fā)明提供的激光點云渲染方法和裝置,用于對基于AutoCAD的三維激光點云渲染。將AutoCAD中的所有格式的點云數(shù)據(jù)轉化成標準的PCG格式點云數(shù)據(jù),并生成包含所述AutoCAD的視窗范圍和預設的點云顯示閾值的標準點云文件,可以解決AutoCAD僅支持PCG格式點云數(shù)據(jù)的技術問題。根據(jù)所述標準點云文件中的PCG格式點云數(shù)據(jù)、所述視窗范圍和點云顯示閾值統(tǒng)計所述三維視窗加載顯示的點云中的待渲染點,將所獲取的點云中的待渲染點添加到所述AutoCAD點云對象中,渲染所述點云。將不同格式的點云數(shù)據(jù)轉化為標準的PCG格式的點云數(shù)據(jù),生成包含所述標準格式的點云數(shù)據(jù),并進行點云渲染,達到了多種數(shù)據(jù)格式兼容的技術問題,提高了生產(chǎn)作業(yè)效率。

附圖說明

為了更清楚地說明本發(fā)明實施例的技術方案,下面將對實施例中所需要使用的附圖作簡單地介紹,應當理解,以下附圖僅示出了本發(fā)明的某些實施例,因此不應被看作是對范圍的限定,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他相關的附圖。

圖1是本發(fā)明實施例提供的激光點云渲染方法所應用的激光點云渲染系統(tǒng)的交互示意圖;

圖2為本發(fā)明實施例提供的激光點云渲染方法所應用的計算機的方框示意圖;

圖3為本發(fā)明第一實施例提供的激光點云渲染方法的步驟流程圖;

圖4為本發(fā)明第二實施例提供的激光點云渲染方法的過程示意圖;

圖5為本發(fā)明第三實施例提供的激光點云渲染裝置的模塊框圖。

具體實施方式

本領域技術人員長期以來一直在尋求一種改善該問題的工具或方法。

鑒于此,本發(fā)明的設計者通過長期的探索和嘗試,以及多次的實驗和努力,不斷的改革創(chuàng)新,得出本方案所示的較佳激光點云渲染方法和裝置。

為使本發(fā)明實施例的目的、技術方案和優(yōu)點更加清楚,下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。因此,以下對在附圖中提供的本發(fā)明的實施例的詳細描述并非旨在限制要求保護的本發(fā)明的范圍,而是僅僅表示本發(fā)明的選定實施例。基于本發(fā)明中的實施例,本領域普通技術人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。

請參見圖1,是本發(fā)明實施例提供的激光點云渲染系統(tǒng)的交互示意圖。所述激光點云渲染系統(tǒng)可以包括:三維激光掃描儀110、POS設備120、全景相機130和激光點云渲染裝置200,所述三維激光掃描儀110、所述POS設備120和所述全景相機130均與所述激光點云渲染裝置140連接,以實現(xiàn)數(shù)據(jù)交互。所述三維激光掃描儀110用戶獲取激光點云數(shù)據(jù)。所述POS設備120用于獲取姿態(tài)位置信息,可以包括:GPS導航儀和慣性制導系統(tǒng)。所述全景相機130用于采集多方位的圖像。

請參見圖2,是本發(fā)明實施例提供的激光點云渲染方法和裝置所應用的計算機200的方框示意圖。所述計算機200包括激光點云渲染裝置140、存儲器202、存儲控制器203、處理器204、外設接口205、輸入輸出單元206、顯示單元等207。

所述存儲器202、存儲控制器203、處理器204、外設接口205、輸入輸出單元206、顯示單元207等各元件相互之間直接或間接地電性連接,以實現(xiàn)數(shù)據(jù)的傳輸或交互。例如,這些元件相互之間可通過一條或多條通訊總線或信號線實現(xiàn)電性連接。所述激光點云渲染裝置140包括至少一個可以軟件或固件(firmware)的形式存儲于所述存儲器中或固化在所述計算機200的操作系統(tǒng)(operating system,OS)中的軟件功能模塊。所述處理器204用于執(zhí)行存儲器中存儲的可執(zhí)行模塊,例如所述激光點云渲染裝置140包括的軟件功能模塊或計算機程序。

其中,存儲器202可以是,但不限于,隨機存取存儲器(Random Access Memory,RAM),只讀存儲器(Read Only Memory,ROM),可編程只讀存儲器(Programmable Read-Only Memory,PROM),可擦除只讀存儲器(Erasable Programmable Read-Only Memory,EPROM),電可擦除只讀存儲器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。其中,存儲器202用于存儲程序,所述處理器204在接收到執(zhí)行指令后,執(zhí)行所述程序,后述本發(fā)明實施例中任一實施例揭示的過程定義的服務器所執(zhí)行的方法可以應用于處理器204中,或者由處理器204實現(xiàn)。

處理器204可能是一種集成電路芯片,具有信號的處理能力。上述的處理器204可以是通用處理器,包括中央處理器(Central Processing Unit,簡稱CPU)、網(wǎng)絡處理器(Network Processor,簡稱NP)等;還可以是數(shù)字信號處理器(DSP)、專用集成電路(ASIC)、現(xiàn)成可編程門陣列(FPGA)或者其他可編程邏輯器件、分立門或者晶體管邏輯器件、分立硬件組件??梢詫崿F(xiàn)或者執(zhí)行本發(fā)明實施例中的公開的各方法、步驟及邏輯框圖。通用處理器可以是微處理器或者該處理器也可以是任何常規(guī)的處理器等。

所述外設接口205將各種輸入輸出單元206耦合至處理器204以及存儲器202。在一些實施例中,外設接口205、處理器204以及存儲控制器203可以在單個芯片中實現(xiàn)。在其他一些實例中,他們可以分別由獨立的芯片實現(xiàn)。

輸入輸出單元206用于提供給用戶輸入數(shù)據(jù)實現(xiàn)用戶與所述服務器的交互。所述輸入輸出單元206可以是,但不限于,鼠標和鍵盤等。

顯示單元207在所述服務器與用戶之間提供一個交互界面,例如用戶操作界面,或用于顯示圖像數(shù)據(jù)給用戶參考。在本實施例中,所述顯示單元207可以是液晶顯示器或觸控顯示器。若為觸控顯示器,其可為支持單點和多點觸控操作的電容式觸控屏或電阻式觸控屏等。支持單點和多點觸控操作是指觸控顯示器能感應到來自該觸控顯示器上一個或多個位置處同時產(chǎn)生的觸控操作,并將該感應到的觸控操作交由處理器進行計算和處理。

本實施例提供的激光點云渲染方法,用于進行激光點云渲染。具體可以用于對基于AutoCAD的三維激光點云渲染。當然,本發(fā)明實施例的具體應用場景并不作為限定,其他需要激光點云渲染的場景也可應用本實施例。以下為對本發(fā)明實施例進行的詳細說明。

請參見圖3,示出了本發(fā)明第一實施例提供的一種激光點云渲染方法的步驟流程圖,應用于圖1所述的激光點云渲染裝置140,用于對基于AutoCAD的三維激光點云渲染。下面將對圖3所示的步驟進行具體解釋。

步驟S301,根據(jù)所述AutoCAD中的所有格式的點云數(shù)據(jù)生成標準點云文件。其中,所述標準點云格式包括:PCG格式點云數(shù)據(jù)、所述AutoCAD的視窗范圍和預設的點云顯示閾值。

AutoCAD中可以處理多種數(shù)據(jù)格式的點云數(shù)據(jù),其主要包括自定義格式點云數(shù)據(jù)和所述AutoCAD本身定義的標準格式點云數(shù)據(jù)。所述自定義格式點云數(shù)據(jù)一般為第三方軟件定義的點云數(shù)據(jù),所述第三方點云數(shù)據(jù)格式主要包括:fls、xyz、xyb、txt、asc、LAS、pts、ptg、ptx、clr、cl3等。所述AutoCAD本身定義的標準格式點云數(shù)據(jù)為PCG格式點云數(shù)據(jù)。

所述AutoCAD在進行激光點云數(shù)據(jù)渲染之前,先將所述AutoCAD中的所有格式的點云數(shù)據(jù)生成標準點云文件,再進行后續(xù)的渲染過程。其中,所述標準點云文件包括:所述AutoCAD所支持的PCG格式點云數(shù)據(jù)、所述AutoCAD的視窗范圍和預設的點云顯示閾值。所述AutoCAD的視窗范圍為軟件的三維視窗的可視范圍,一般為所述三維窗口的三個端軸的可使用范圍數(shù)據(jù)。所述預設的點云顯示閾值,為所述三維視窗可加載顯示的點云中的點的數(shù)量。在一種實施方式中,優(yōu)選所述AutoCAD的點云顯示閾值為300萬點。

在一種實施方式中,根據(jù)所有格式的點云數(shù)據(jù)生成標準點云文件的過程可以參見如下方式:

將所述AutoCAD定義的點云對象與自定義格式的點云對象綁定;

把所述自定義格式的點云對象與所述自定義格式的點云數(shù)據(jù)關聯(lián);

獲取所述AutoCAD的三維視窗的視窗范圍。

在一種實施方式中,獲取所述AutoCAD的三維視窗的視窗范圍的方式可以為:

獲取所述三維視窗的高寬、焦距、視圖中心坐標及坐標轉換模型等參數(shù)。根據(jù)當前的三維視窗的屏幕坐標的范圍計算所述三維視窗的橫軸坐標和縱軸坐標,進而根據(jù)所獲取的橫軸坐標和縱軸坐標計算所述AutoCAD的三維視窗的視窗范圍。

步驟S302,根據(jù)所述PCG格式點云數(shù)據(jù)、所述視窗范圍和點云顯示閾值統(tǒng)計所述三維視窗加載顯示的點云中的待渲染點。

依據(jù)上述步驟,將所述AutoCAD的所有格式的點云數(shù)據(jù)生成標準點云文件之后,進行待渲染點的統(tǒng)計操作。具體地,根據(jù)所述標準點云文件中的PCG格式點云數(shù)據(jù)、所述視窗范圍和點云顯示閾值統(tǒng)計所述三維視窗加載顯示的點云中的待渲染點。在一種實施方式中,統(tǒng)計待渲染點的方式為:

根據(jù)所述視窗范圍和所述點云顯示閾值計算所述三維視窗加載的點云層級。根據(jù)所述PCG格式點云數(shù)據(jù)、所述點云層級和所述點云顯示閾值統(tǒng)計所述三維視窗加載顯示的點云中的待渲染點。

為了保證不同的硬件配置環(huán)境都能夠實現(xiàn)點云數(shù)據(jù)的流暢瀏覽,需要根據(jù)不同的環(huán)境設置點云顯示閾值,優(yōu)選地,將所述點云顯示閾值設置為150w-1000w。根據(jù)當前視窗范圍和指定的點云顯示閾值,在自定義點云數(shù)據(jù)文件中進行點云層級過濾,判斷出最適合當前視口范圍的點云層級,加載對應的點云數(shù)據(jù)進行顯示。

在一種實施方式中,自定義點云文件可以按金字塔形式分層存儲。第零層存儲原始所有點云,第一層將第零層數(shù)據(jù)抽稀進行存儲,每往上一層都是在當前層的基礎上抽稀進行存儲。使用時,根據(jù)點云顯示閾值先判斷合適的點云加載層級,再進行加載顯示。

例如,當前點云顯示閾值設置為250w,即當前視窗范圍內最大加載點數(shù)不能超過250w個點,在視窗范圍變化后,根據(jù)視窗范圍來控制自定義點云加載范圍,計算該空間范圍內不超過該點云顯示閾值的最小層級。

AutoCAD的三維視窗點云瀏覽流暢程度和點云顯示的數(shù)據(jù)量成正比,因此需要根據(jù)視圖范圍實時統(tǒng)計需要顯示的點云數(shù)據(jù)進行繪制。獲取點云數(shù)據(jù)的層級數(shù)目,遍歷每個層級,統(tǒng)計在當前的三維視窗內每個圖層的點云點數(shù),選擇點云點數(shù)與點云顯示閾值最接近的點云層級進行數(shù)據(jù)加載顯示。

步驟S303,將所獲取的點云中的待渲染點添加到所述AutoCAD點云對象中,渲染所述點云。

依據(jù)上述步驟獲取所述點云中的待渲染點之后,將所獲取的點云中的待渲染點添加到所述AutoCAD點云對象中,根據(jù)不同的渲染方式渲染所述待渲染點,進而實現(xiàn)所述點云的渲染。在一種實施方式中,將所獲取點云中的待渲染點添加到所述AutoCAD點云對象中,渲染所述點云的方式包括:

遍歷所獲取的所有點云中的待渲染點,獲取所述三維視窗內的點云端點值,根據(jù)所述端點值獲取所述點云中的待渲染點的顏色,根據(jù)所述點云中的待渲染點的顏色渲染所述點云。

進行點云渲染的渲染器可以有多種,其對應的渲染方式也有多種。下面將結合不同的渲染方式,詳細描述所述點云的渲染過程。

其一,所述渲染方式包括強度式,即為根據(jù)所述三維視窗內點云強度分布范圍值進行渲染。上述步驟所述的,獲取所述三維視窗內的點云端點值,根據(jù)所述端點值獲取所述點云中的待渲染點的顏色的步驟,具體包括:

獲取所述三維視窗內點云強度分布范圍的最大強度值和最小強度值,獲取所述點云中的待渲染點,將所述待渲染點的強度值限定到標準強度范圍內,根據(jù)所述待渲染點的強度值獲取所述待渲染點的顏色。

獲取所述三維視窗內點云強度分布范圍的最大強度值和最小強度值的實施過程可以包括:

把所述點云的強度范圍分布值映射到第二標準區(qū)間,其中,所述第二標準區(qū)間對應第二閾值,通過所述第二閾值過濾所述待渲染點得到第二臨時數(shù)據(jù),根據(jù)所述第二臨時數(shù)據(jù)獲取所述最大強度值和最小強度值。

將所述點云中的點加載到所述AutoCAD的三維視窗后,獲取所述三維視窗內點云強度分布范圍。根據(jù)所述三維視窗內點云強度分布范圍,確定其最大強度值和最小強度值。為了使點云按照強度渲染時對比度保持平穩(wěn),統(tǒng)計強度時需要剔除一些強度特別大和強度特別小的待渲染點。為達到特殊點剔除的目的,根據(jù)所述三維視窗內的最大強度值和最小強度值,設置標準強度范圍。獲取所述點云中的待渲染點,將所述點云強度統(tǒng)計分布范圍映射到標準強度范圍內。一般地,將所述標準強度范圍設置為[0,255]。將所述點云強度分布范圍值映射到標準強度范圍內,并按照強度值從小到大的順序進行排序。設定一個對應點云中待渲染點的數(shù)量的第一閾值,通過所述第一閾值過濾所述點云中的所有點。在所述第一閾值范圍內的點云進行抽稀統(tǒng)計,統(tǒng)計其新的點云強度范圍的最大強度值和最小強度值。

其二,所述渲染方式包括端軸式,即為根據(jù)所述待渲染點在某一端軸上的顏色比例值和顏色帶獲取該端軸上渲染點的顏色,根據(jù)該待渲染點的顏色進行點云渲染。上述步驟所述的,獲取所述三維視窗內的點云端點值,根據(jù)所述端點值獲取所述點云中的待渲染點的顏色的步驟,具體包括:

獲取所述三維視窗內點云在端軸上的最大端軸值和最小端軸值,其中,所述端軸為所述三維視窗所在三維坐標系中的三個端軸中的任一個。根據(jù)所述待渲染點在該端軸的坐標和該端軸的最小端軸值的差值,獲取所述待渲染點在色帶條的色帶和顏色比例值,獲取所述待渲染點的顏色。

獲取所述三維視窗內點云在端軸上的最大端軸值和最小端軸值的步驟包括:

把所述點云在所述端軸上的值映射到第一標準區(qū)間,其中,所述第一標準區(qū)間對應第一閾值,將映射到所述第一標準區(qū)間內的點數(shù)累加統(tǒng)計得出第一臨時數(shù)據(jù),通過所述第一閾值過濾所述第一臨時數(shù)據(jù),獲取對應所述點云在所述端軸上的最大端軸值和最小端軸值。

所述三維視窗所應用的三維坐標系中,包括橫軸、縱軸和高程軸,所述橫軸可以對應所述三維坐標系的X軸,所述縱軸可以對應所述三維坐標系的Y軸,所述高程軸可以對應所述三維坐標系的Z軸。所述的端軸式渲染方式可以包括:根據(jù)橫軸渲染,根據(jù)縱軸渲染和根據(jù)高程軸渲染這三種方式。

如果根據(jù)橫軸渲染,獲取所述三維視窗內點云在橫軸上的最大橫軸值和最小橫軸值。在進行任一待渲染點的顏色獲取時,根據(jù)該待渲染點在該橫軸的坐標和該橫軸最小值的差值,獲取所述待渲染點在色帶條的色帶和顏色比例值。在所述色帶條中的色帶,以及顏色比例值,確定該待渲染點的顏色。

如果根據(jù)縱軸渲染,獲取所述三維視窗內點云在縱軸上的最大縱軸值和最小縱軸值。在進行任一待渲染點的顏色獲取時,根據(jù)該待渲染點在該縱軸的坐標和該縱軸最小值的差值,獲取所述待渲染點在色帶條的色帶和顏色比例值。在所述色帶條中的色帶,以及顏色比例值,確定該待渲染點的顏色。

如果根據(jù)高程值渲染,獲取所述三維視窗內點云在高程軸上的最大高程軸值和最小高程值。在進行任一待渲染點的顏色時,根據(jù)該待渲染點在該高程軸的坐標和該高程軸的最小值的差值,獲取所述待渲染點在色帶條的色帶和顏色比例值。在所述色帶條的色帶,以及顏色比例值,確定該待渲染點的顏色。

其三,所述渲染方式包括循環(huán)色帶式。所述端軸值為所述三維坐標系中的高程值。上述步驟所述的,獲取所述三維視窗內的點云端點值,根據(jù)所述端點值獲取所述點云中的待渲染點的顏色的步驟,具體包括:

根據(jù)預設的循環(huán)步長、待渲染點的高程值和最大高程值的差值,獲取所述待渲染點在所述色帶條中的顏色待及所述顏色帶的比例值,根據(jù)所述顏色帶和所述顏色帶的比例值,獲取所述待渲染點的顏色。

預設循環(huán)步長,根據(jù)循環(huán)步長及待渲染點的高程軸值和點云的最大高程值的差值,求出在色帶條中的色帶,以及該色帶的比例值,進而取出點顏色。

首先設置指定方向的循環(huán)渲染間距JumpDist,遍歷點云中的待渲染點。將待渲染點的高程軸坐標減去最小高程值得到距離,將距離對循環(huán)渲染間距JumpDist,進而求模得到M,Dist對JumpDist求余得到L,為保證循環(huán)渲染時色彩的對稱性對M為奇數(shù)的點進行標記,S減去M得到相對循環(huán)距離RelativeDist,然后根據(jù)RelativeDist求出在色帶條中的顏色帶及該色帶的比例值,進而取出顏色。

在其它實施方式中,所述高程軸也可以為橫軸或者縱軸,相應地,所涉及的待渲染點的高程軸坐標替換為橫軸坐標值或者縱軸坐標值,用于求距離的最小高程值替換為最小橫軸值或者最小縱軸值。

其四,所述渲染方式還可以包括RGB顏色渲染的方式,可以直接讀取點云中待渲染點自身的顏色信息。

在上述實施例的基礎上,為了使得點云按照端軸和循環(huán)色帶渲染時顏色保持平穩(wěn),統(tǒng)計端軸值時,需要剔除一些值特別大或者特別小的待渲染點。把點云端軸值統(tǒng)計分布范圍映射到標準顯示區(qū)間,設定一個對應該標準顯示區(qū)間的第二閾值。一般地,將所述標準顯示區(qū)間設為[0,999]區(qū)間。對分布在所述標準顯示區(qū)間的點數(shù)進行累加統(tǒng)計,以所述第二閾值過濾所述標準顯示區(qū)間內映射的所有點,過濾不再所述第二閾值內的點。統(tǒng)計出點云在高程軸方向上的最大高程值和最小高程值、在橫軸方向的最大橫軸值和最小橫軸值以及在縱軸方向的最大縱軸值和最小縱軸值。在進行后續(xù)的渲染過程。

根據(jù)不同渲染器所應用的渲染方式獲得點云中待渲染點的顏色后,渲染所述點云,即為完成了基于AutoCAD的激光點云的渲染操作。

上述本發(fā)明實施例提供的激光點云渲染方法,將AutoCAD中的所有格式的點云數(shù)據(jù)轉化成標準的PCG格式點云數(shù)據(jù),并生成包含所述AutoCAD的視窗范圍和預設的點云顯示閾值的標準點云文件,可以解決AutoCAD僅支持PCG格式點云數(shù)據(jù)的技術問題。根據(jù)所述標準點云文件中的PCG格式點云數(shù)據(jù)、所述視窗范圍和點云顯示閾值統(tǒng)計所述三維視窗加載顯示的點云中的待渲染點,將所獲取的點云中的待渲染點添加到所述AutoCAD點云對象中,渲染所述點云。能將不同格式的點云數(shù)據(jù)轉化為標準的PCG格式的點云數(shù)據(jù),生成包含所述標準格式的點云數(shù)據(jù),并進行點云渲染,達到了多種數(shù)據(jù)格式兼容的技術問題,提高了生產(chǎn)作業(yè)效率。

請參見圖4,為本發(fā)明第二實施例提供的激光點云渲染方法的步驟流程圖。

步驟S410,創(chuàng)建自定義點云實體,用于管理點云數(shù)據(jù)。

所述AutoCAD在進行激光點云數(shù)據(jù)渲染之前,先將所述AutoCAD中的所有格式的點云數(shù)據(jù)生成標準點云文件,再進行后續(xù)的渲染過程。其中,所述標準點云文件包括:所述AutoCAD所支持的PCG格式點云數(shù)據(jù)、所述AutoCAD的視窗范圍和預設的點云顯示閾值。所述AutoCAD的視窗范圍為軟件的三維視窗的可視范圍,一般為所述三維窗口的三個端軸的可使用范圍數(shù)據(jù)。

步驟S420,加載點云數(shù)據(jù)時,創(chuàng)建AutoCAD點云實體綁定自定義點云實體。

將所述AutoCAD定義的點云對象與自定義格式的點云對象綁定,把所述自定義格式的點云對象與所述自定義格式的點云數(shù)據(jù)關聯(lián),獲取所述AutoCAD的三維視窗的視窗范圍。

步驟S430,構建漸變顏色條。

所述漸變顏色條,即為將不同顏色值通過RGB方式表達后組合成的色帶數(shù)組。例如:紅橙黃綠青藍紫,在計算機中就可以以一個RGB數(shù)組形式存在,也就是構建了一個漸變顏色條。

所述點云不同區(qū)域的待渲染點對應不同的顏色,構建對應所述點云的漸變顏色條。

步驟S440,遍歷點云數(shù)據(jù)統(tǒng)計平穩(wěn)端軸的最大端軸值和最小端軸值。

AutoCAD的三維視窗點云瀏覽流暢程度和點云顯示的數(shù)據(jù)量成正比,因此需要根據(jù)視圖范圍實時統(tǒng)計需要顯示的點云數(shù)據(jù)進行繪制。獲取點云數(shù)據(jù)的層級數(shù)目,遍歷每個層級,統(tǒng)計在當前的三維視窗內每個圖層的點云點數(shù),選擇點云點數(shù)與點云顯示閾值最接近的點云層級進行數(shù)據(jù)加載顯示。

獲取所述三維視窗內點云在端軸上的最大端軸值和最小端軸值,其中,所述端軸為所述三維視窗所在三維坐標系中的三個端軸中的任一個。根據(jù)所述待渲染點在該端軸的坐標和該端軸的最小端軸值的差值,獲取所述待渲染點在色帶條的色帶和顏色比例值,獲取所述待渲染點的顏色。

獲取所述三維視窗內點云在端軸上的最大端軸值和最小端軸值的步驟包括:

所述三維視窗所應用的三維坐標系中,包括橫軸、縱軸和高程軸,所述橫軸可以對應所述三維坐標系的X軸,所述縱軸可以對應所述三維坐標系的Y軸,所述高程軸可以對應所述三維坐標系的Z軸。

步驟S450,點云視圖范圍裁切。

步驟S460,遍歷裁切點云數(shù)據(jù),統(tǒng)計平穩(wěn)強度的最大強度值和最小強度值。

把所述點云在所述端軸上的值映射到第一標準區(qū)間,其中,所述第一標準區(qū)間對應第一閾值,將映射到所述第一標準區(qū)間內的點數(shù)累加統(tǒng)計得出第一臨時數(shù)據(jù),通過所述第一閾值過濾所述第一臨時數(shù)據(jù),獲取對應所述點云在所述端軸上的最大端軸值和最小端軸值。

步驟S470,點云渲染器配置。

所述點云渲染器對應不同的點云渲染方式,所述點云渲染方式包括端軸式、循環(huán)色帶式和RGB式。所述的端軸式渲染方式可以包括:根據(jù)橫軸渲染,根據(jù)縱軸渲染和根據(jù)高程軸渲染這三種方式。根據(jù)所選擇的渲染方式配置相應的點云渲染器,選擇對應的渲染方式記性點云渲染。

步驟S481,按高程軸渲染,根據(jù)待渲染點高程軸坐標和平穩(wěn)高程軸的最小高程值的差值從色帶條中獲取所述待渲染點的顏色,執(zhí)行步驟S490。

如果根據(jù)高程值渲染,獲取所述三維視窗內點云在高程軸上的最大高程軸值和最小高程值。在進行任一待渲染點的顏色時,根據(jù)該待渲染點在該高程軸的坐標和該高程軸的最小值的差值,獲取所述待渲染點在色帶條的色帶和顏色比例值。在所述色帶條的色帶,以及顏色比例值,確定該待渲染點的顏色。

在其它實施方式中,也可以按照端軸中的橫軸或者縱軸渲染。

如果根據(jù)橫軸渲染,獲取所述三維視窗內點云在橫軸上的最大橫軸值和最小橫軸值。在進行任一待渲染點的顏色獲取時,根據(jù)該待渲染點在該橫軸的坐標和該橫軸最小值的差值,獲取所述待渲染點在色帶條的色帶和顏色比例值。在所述色帶條中的色帶,以及顏色比例值,確定該待渲染點的顏色。

如果根據(jù)縱軸渲染,獲取所述三維視窗內點云在縱軸上的最大縱軸值和最小縱軸值。在進行任一待渲染點的顏色獲取時,根據(jù)該待渲染點在該縱軸的坐標和該縱軸最小值的差值,獲取所述待渲染點在色帶條的色帶和顏色比例值。在所述色帶條中的色帶,以及顏色比例值,確定該待渲染點的顏色。

步驟S482,按循環(huán)色帶渲染,根據(jù)待渲染點高程軸坐標和平穩(wěn)高程軸的最小高程值及循環(huán)步長,從色帶條中獲取所述待渲染點的顏色,執(zhí)行步驟S490。

根據(jù)預設的循環(huán)步長、待渲染點的高程值和最大高程值的差值,獲取所述待渲染點在所述色帶條中的顏色待及所述顏色帶的比例值,根據(jù)所述顏色帶和所述顏色帶的比例值,獲取所述待渲染點的顏色。

預設循環(huán)步長,根據(jù)循環(huán)步長及待渲染點的高程軸值和點云的最大高程值的差值,求出在色帶條中的色帶,以及該色帶的比例值,進而取出點顏色。

首先設置指定方向的循環(huán)渲染間距JumpDist,遍歷點云中的待渲染點。將待渲染點的高程軸坐標減去最小高程值得到距離,將距離對循環(huán)渲染間距JumpDist,進而求模得到M,Dist對JumpDist求余得到L,為保證循環(huán)渲染時色彩的對稱性對M為奇數(shù)的點進行標記,S減去M得到相對循環(huán)距離RelativeDist,然后根據(jù)RelativeDist求出在色帶條中的顏色帶及該色帶的比例值,進而取出顏色。

在其它實施方式中,所述高程軸也可以為橫軸或者縱軸,相應地,所涉及的待渲染點的高程軸坐標替換為橫軸坐標值或者縱軸坐標值,用于求距離的最小高程值替換為最小橫軸值或者最小縱軸值。

步驟S483,根據(jù)RGB渲染,直接讀取點云的顏色信息,步驟S493。

按照RGB顏色渲染的方式,可以直接讀取點云中待渲染點自身的顏色信息。

步驟S484,按強度渲染,根據(jù)強度值和平穩(wěn)強度最小值的差值計算所述透明度,根據(jù)所述透明度獲取待渲染點的顏色,步驟S493。

所述渲染方式包括強度式,即為根據(jù)所述三維視窗內點云強度分布范圍值進行渲染。上述步驟所述的,獲取所述三維視窗內的點云端點值,根據(jù)所述端點值獲取所述點云中的待渲染點的顏色的步驟,具體包括:

獲取所述三維視窗內點云強度分布范圍的最大強度值和最小強度值,獲取所述點云中的待渲染點,將所述待渲染點的強度值限定到標準強度范圍內,根據(jù)所述待渲染點的強度值獲取所述待渲染點的顏色。

獲取所述三維視窗內點云強度分布范圍的最大強度值和最小強度值的實施過程可以包括:

把所述點云的強度范圍分布值映射到第二標準區(qū)間,其中,所述第二標準區(qū)間對應第二閾值,通過所述第二閾值過濾所述待渲染點得到第二臨時數(shù)據(jù),根據(jù)所述第二臨時數(shù)據(jù)獲取所述最大強度值和最小強度值。

將所述點云中的點加載到所述AutoCAD的三維視窗后,獲取所述三維視窗內點云強度分布范圍。根據(jù)所述三維視窗內點云強度分布范圍,確定其最大強度值和最小強度值。為了使點云按照強度渲染時對比度保持平穩(wěn),統(tǒng)計強度時需要剔除一些強度特別大和強度特別小的待渲染點。為達到特殊點剔除目的,根據(jù)所述三維視窗內的最大強度值和最小強度值,設置標準強度范圍。獲取所述點云中的待渲染點,將所述點云強度統(tǒng)計分布范圍映射到標準強度范圍內。一般地,將所述標準強度范圍設置為[0,255]。將所述點云強度分布范圍值映射到標準強度范圍內,并按照強度值從小到大的順序進行排序。設定一個對應點云中待渲染點的數(shù)量的第一閾值,通過所述第一閾值過濾所述點云中的所有點。在所述第一閾值范圍內的點云進行抽稀統(tǒng)計,統(tǒng)計其新的點云強度范圍的最大強度值和最小強度值。

步驟S490,判斷是否加入透明度。

若是則執(zhí)行步驟S491,先把獲取的RGB轉為HSV,把透明度信息加入到HSV中,再把HSV轉為RGB。

若否則執(zhí)行步驟S492,直接采用獲取到的RGB值。

所述透明度,即為透光的程度。為進一步優(yōu)化AutoCAD中點云數(shù)據(jù)的三維視窗的渲染顯示過程,增加實時透明度渲染技術。在根據(jù)端軸或者循環(huán)色帶渲染的步驟之后,判斷是否加入透明度。此時需要設計到另一種顏色模型,即為HSV,即為一種六角椎體模型,是根據(jù)顏色的直觀特性創(chuàng)建的一種顏色空間。在所述模型中,顏色的參數(shù)分別包括色調(Hue)、飽和度(Saturation)和明度(Value)。

若要加入透明度,則把上述步驟獲取的RGB轉換為HSV,把透明度信息加入到HSV中,再把HSV轉為RGB。若不需要加入透明度,則直接采用獲取到的RGB值。

上述的RGB和HSV都是顏色的具體參數(shù)表現(xiàn)方式,通過色彩轉換方程可以實現(xiàn)兩者的互相轉換。如果要加入透明度信息,首先先通過色彩轉換方程將RGB值轉換為HSV值,其次將對應透明度的值除以透明度的存在范圍進行百分化,然后將上述HSV中的明度參數(shù)使用該百分化值進行加權,再將加權過后的HSV轉換為RGB值即實現(xiàn)了色彩透明度的添加過程。

步驟S493,在所述AutoCAD三維視窗中繪制點云。

依據(jù)上述步驟獲取所述點云中的待渲染點之后,將所獲取的點云中的待渲染點添加到所述AutoCAD點云對象中,根據(jù)不同的渲染方式渲染所述待渲染點,進而實現(xiàn)所述點云的渲染。

在上述實施例的基礎上,點云范圍的計算方法可以采用點云視圖裁切算法進行確定,也可以利用所述AutoCAD相關視圖裁切接口進行點云視圖裁切計算。

在上述實施例的基礎上,實時計算當前視圖需要加載的點云數(shù)據(jù)量的過程,根據(jù)不同計算機配置環(huán)境和所述AutoCAD軟件版本點云對象渲染器性能,點云顯示的閾值可能在150萬-1000萬之間。

上述本發(fā)明實施例提供的激光點云渲染方法,以自定義點云數(shù)據(jù)的方式,按空間分層分快分包進行文件管理。根據(jù)不同場景進行點云視圖裁切,實時判斷需要加載的空間范圍內的點云包數(shù)據(jù)進行動態(tài)加載,數(shù)據(jù)量較小,加載的效率優(yōu)于PCG點云數(shù)據(jù)直接通過內存進行抽稀加載的效率。按空間分數(shù)據(jù)包加載自定義點云數(shù)據(jù),最大程度減少加載數(shù)據(jù)的冗余量,并能夠實現(xiàn)最大程度的點云細節(jié)加載呈現(xiàn)。優(yōu)化AutoCAD點云數(shù)據(jù)三維視窗渲染顯示過程,增加了實時強度透明度渲染技術。利用多種渲染方式,擴大了點云渲染的顯示效果。

請參見圖5,為本發(fā)明第三實施例提供的激光點云渲染裝置的結構功能模塊圖。所述裝置包括:標準點云文件生成模塊510、待渲染點統(tǒng)計模塊520和渲染模塊530。

標準點云文件生成模塊510,用于根據(jù)所述AutoCAD中的所有格式的點云數(shù)據(jù)生成標準點云文件,其中,所述標準點云格式包括:PCG格式點云數(shù)據(jù)、所述AutoCAD的視窗范圍和預設的點云顯示閾值;

待渲染點統(tǒng)計模塊520,用于根據(jù)所述PCG格式點云數(shù)據(jù)、所述視窗范圍和點云顯示閾值統(tǒng)計所述三維視窗加載顯示的點云中的待渲染點;

渲染模塊530,用于將所獲取的點云中的待渲染點添加到所述AutoCAD點云對象中,渲染所述點云。

上述本發(fā)明實施例提供的激光點云渲染裝置,將AutoCAD中的所有格式的點云數(shù)據(jù)轉化成標準的PCG格式點云數(shù)據(jù),并生成包含所述AutoCAD的視窗范圍和預設的點云顯示閾值的標準點云文件,可以解決AutoCAD僅支持PCG格式點云數(shù)據(jù)的技術問題。根據(jù)所述標準點云文件中的PCG格式點云數(shù)據(jù)、所述視窗范圍和點云顯示閾值統(tǒng)計所述三維視窗加載顯示的點云中的待渲染點,將所獲取的點云中的待渲染點添加到所述AutoCAD點云對象中,渲染所述點云。能將不同格式的點云數(shù)據(jù)轉化為標準的PCG格式的點云數(shù)據(jù),生成包含所述標準格式的點云數(shù)據(jù),并進行點云渲染,達到了多種數(shù)據(jù)格式兼容的技術問題,提高了生產(chǎn)作業(yè)效率。本實施例提供的激光點云渲染裝置的具體實施過程可參照上述方法實施例,在此不再一一贅述。

以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,對于本領域的技術人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內。

當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
称多县| 青岛市| 怀柔区| 邢台市| 襄汾县| 奇台县| 兴化市| 西藏| 泰来县| 巍山| 盐亭县| 东阳市| 海晏县| 瑞安市| 军事| 荥经县| 松潘县| 江西省| 亳州市| 吉水县| 湖北省| 建德市| 连江县| 阳泉市| 栾城县| 集贤县| 舟曲县| 深圳市| 建始县| 东安县| 平定县| 临沭县| 司法| 前郭尔| 汉阴县| 韶山市| 梅州市| 壤塘县| 凤阳县| 永修县| 安仁县|