亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        三維倉(cāng)庫(kù)的研究及實(shí)現(xiàn)

        2022-02-20 01:29:02王笑紅
        電腦知識(shí)與技術(shù) 2022年34期

        王笑紅

        摘要:醫(yī)療衛(wèi)生行業(yè)在物資庫(kù)房中需要存入大量的物資以備使用,然而物資庫(kù)房管理人員難以對(duì)庫(kù)房中大量的不同規(guī)格、不同批次,甚至不同品種的物資進(jìn)行準(zhǔn)確、直觀的管理。文章結(jié)合網(wǎng)絡(luò)圖形庫(kù)(WebGL)、空間剖分法和層次包圍盒法結(jié)合的碰撞檢測(cè)算法,對(duì)三維倉(cāng)庫(kù)進(jìn)行了研究及實(shí)現(xiàn),通過(guò)建立三維庫(kù)房的方式解決了上述問(wèn)題的同時(shí)也為其他同類系統(tǒng)的開(kāi)發(fā)提供了借鑒。

        關(guān)鍵詞:三維;倉(cāng)庫(kù);WebGL;空間剖分法;層次包圍盒法

        中圖分類號(hào):TP311? ? 文獻(xiàn)標(biāo)識(shí)碼:A

        文章編號(hào):1009-3044(2022)34-0088-03

        醫(yī)療衛(wèi)生行業(yè)在診療工作中,需要使用相應(yīng)的物資配合診療工作,因此會(huì)有大量的物資被存入庫(kù)房中以備使用。然而醫(yī)療行業(yè)所用大部分物資會(huì)有同一品種多種規(guī)格、多批采購(gòu)批次,但外形大體相同的情況,導(dǎo)致物資庫(kù)房管理人員難以對(duì)庫(kù)房中不同規(guī)格、不同批次,甚至不同品種的物資進(jìn)行準(zhǔn)確、直觀的管理。

        現(xiàn)有的庫(kù)房中庫(kù)存物資分辨方式大多采用人工翻找、人工記錄物資庫(kù)位、在產(chǎn)品外添加RFID或二維碼等方式實(shí)現(xiàn)對(duì)外形大體相同的物資進(jìn)行分辨,然而因庫(kù)房空間不足導(dǎo)致物資亂疊亂放、對(duì)庫(kù)位進(jìn)行編號(hào)的方式過(guò)于粗放,不夠詳細(xì)、對(duì)庫(kù)存擺放情況的了解不夠準(zhǔn)確直觀等原因,庫(kù)房管理者往往無(wú)法準(zhǔn)確、直觀地對(duì)庫(kù)房中物資進(jìn)行分辨和管理。在物資外添加RFID或二維碼的方式雖能夠準(zhǔn)確分辨外形大體相同的不同物資,然而二維碼的識(shí)別距離有限,RFID的識(shí)別距離與RFID的價(jià)位掛鉤,成本較高,且外形大體相同的物資在庫(kù)房中大多因品種相似或相同等原因相鄰擺放或堆疊,在產(chǎn)品外添加RFID的方式無(wú)法解決相鄰擺放或堆疊的物資中某一種特定物資的識(shí)別問(wèn)題。

        為解決上述庫(kù)房中物資管理存在的諸多問(wèn)題,本文對(duì)三維倉(cāng)庫(kù)進(jìn)行了研究及實(shí)現(xiàn),使管理人員對(duì)庫(kù)房中物資更為準(zhǔn)確、直觀地管理,也為同類系統(tǒng)的開(kāi)發(fā)提供了借鑒。

        1 系統(tǒng)設(shè)計(jì)

        目前較為流行、輕便的三維倉(cāng)庫(kù)建模技術(shù)是基于瀏覽器/客戶端(B/S)模式的WebGL技術(shù),且B/S模式相對(duì)于客戶端/服務(wù)器(Client/Server)模式來(lái)說(shuō)在便捷性上具有更高的優(yōu)勢(shì)。然而原生的WebGL語(yǔ)言用于三維倉(cāng)庫(kù)建模過(guò)于復(fù)雜,因而選用WebGL的一個(gè)功能強(qiáng)大的類庫(kù)Three.js來(lái)進(jìn)行三維建模。

        1.1 三維物資入庫(kù)

        在對(duì)物資進(jìn)行入庫(kù)時(shí),因不同物資外形差異較大,且不斷有新的不同外形的物資入庫(kù),舊有物資因淘汰而不再使用等情況發(fā)生,對(duì)每一種物資做三維模型成本高且收益低,因此通過(guò)使用外形簡(jiǎn)單的立方體代替外形復(fù)雜的實(shí)際物資在三維倉(cāng)庫(kù)中進(jìn)行入庫(kù)。在入庫(kù)時(shí),需人工指定該物資的存放位置,在指定物資存放位置時(shí),該物資可能會(huì)與其他已有物資產(chǎn)生穿刺或者重疊,這明顯與現(xiàn)實(shí)不符。因此添加碰撞檢測(cè)功能防止物資存放在不符合現(xiàn)實(shí)的錯(cuò)誤位置。

        當(dāng)前針對(duì)碰撞檢測(cè),比較常見(jiàn)且有效的方法是GPU[1]加速和HBV[2]。其中GPU加速雖然能夠擺脫對(duì)CPU的消耗,提升圖像處理效果,但是成本較高,且靈活性和擴(kuò)展性受限。HBV是層次包圍盒,通過(guò)一個(gè)相對(duì)規(guī)則的三維體包圍盒包裹可能較為復(fù)雜的實(shí)際物體[3],從而降低碰撞檢測(cè)的計(jì)算量,從策略和算法角度提高了碰撞檢測(cè)的適應(yīng)性[4],因此選擇層次包圍盒法進(jìn)行碰撞檢測(cè)。

        層次包圍盒中,有包圍球、軸對(duì)齊包圍盒(AABB包圍盒)、方向包圍盒等,其中球形包圍盒包裹的緊密性較差,方向包圍盒的構(gòu)造過(guò)程復(fù)雜,而軸對(duì)齊包圍盒構(gòu)造容易、檢測(cè)較快[5],且與實(shí)際物資外形大致相符因而包裹緊密性較好,因此在使用立方體代替實(shí)際物資時(shí),通過(guò)填寫入庫(kù)物資的長(zhǎng)寬高等參數(shù),在三維場(chǎng)景中生成代替實(shí)際物資的軸對(duì)齊長(zhǎng)方體包圍盒,并用該包圍盒采用投影法進(jìn)行碰撞檢測(cè)。投影法是通過(guò)檢測(cè)新添加的物資的包圍盒與其他物資的包圍盒在X,Y,Z坐標(biāo)軸上的投影是否重合來(lái)判斷是否存在碰撞。如果新添加的包圍盒與其他包圍盒在X,Y,Z坐標(biāo)軸上的投影全部重合,則該包圍盒與其他包圍盒存在碰撞,也即新添加的物資與其他物資存在碰撞,否則認(rèn)為與其他物資不存在碰撞[6]。

        隨著倉(cāng)庫(kù)中存放的物資增多,在進(jìn)行碰撞檢測(cè)時(shí),需判斷是否與新入庫(kù)物資產(chǎn)生碰撞的物體也在增多,進(jìn)行碰撞檢測(cè)的速度也會(huì)降低,而部分物體實(shí)際上與新入庫(kù)物資相距較遠(yuǎn),不會(huì)與新入庫(kù)物資發(fā)生碰撞。因此,為增快碰撞檢測(cè)速度,使用空間剖分法對(duì)三維立體空間進(jìn)行空間剖分,僅檢測(cè)與新入庫(kù)物資處于同一空間區(qū)間的物資而不再檢測(cè)與新入庫(kù)物資處于不同空間區(qū)間從而不會(huì)與新入庫(kù)物資產(chǎn)生碰撞的物資。設(shè)定一個(gè)空間內(nèi)最大物資數(shù)量的閾值,如空間中物資數(shù)量超過(guò)閾值,則坐標(biāo)軸上的剖分點(diǎn)生成垂直于坐標(biāo)軸的分割面對(duì)空間進(jìn)行剖分,將空間一分為二。在對(duì)空間進(jìn)行剖分時(shí),為避免空間占用浪費(fèi)和減低計(jì)算效率,要選擇合適的剖分點(diǎn)[7],剖分點(diǎn)需滿足以該點(diǎn)進(jìn)行剖分后,剖分出的兩個(gè)子空間中的物資數(shù)量相近且總和最少。設(shè)剖分點(diǎn)為x,物資e上坐標(biāo)點(diǎn)最小值為a,最大值為b,當(dāng)a>x或者b<x時(shí),e上坐標(biāo)點(diǎn)都在x的一側(cè),e全部位于以x為剖分點(diǎn)剖分出的其中一個(gè)子空間,否則e上坐標(biāo)點(diǎn)在x兩側(cè),e同時(shí)存在于以x為剖分點(diǎn)剖分出的兩個(gè)子空間內(nèi),因此,如果想讓剖分出的兩個(gè)子空間中的物資數(shù)量總和最少,則a>x和b<x的e數(shù)量最大。對(duì)a和b進(jìn)行混合排序,生成序列N,剖分點(diǎn)x從N的最小值開(kāi)始逐步增大,直到x等于N中的最大值。當(dāng)x為N的最小值時(shí),a>x的e數(shù)量為n,b<x的e數(shù)量為0,總和為n。在x逐步增大期間,a>x的e數(shù)量減小,b<x的e數(shù)量增加。設(shè)a>x的e數(shù)量為a,b>x的e數(shù)量為b,則a>x和b<x的e數(shù)量總和為:

        a+n-b=n-(b-a) (1)

        因?yàn)閎為e上坐標(biāo)最大值,a為e上坐標(biāo)最小值,所以b>x的e數(shù)量大于等于a>x的e數(shù)量,如想讓n-(b-a)最大,則b=a。因此在剖分點(diǎn)x逐步增大期間,記錄序列中b=a的點(diǎn),取最靠近中心的b=a的點(diǎn)作為剖分點(diǎn)x的取值。

        該算法類似于空間剖分法中的K-d樹(shù),然而K-d樹(shù)是取子空間中物體數(shù)量的最小值作為閾值,小于閾值則停止剖分,然而這種剖分的方法會(huì)增加子空間的數(shù)量和空間剖分的計(jì)算量,本文所用的空間剖分算法在K-d樹(shù)的基礎(chǔ)上將子空間中物體數(shù)量的最大值作為閾值,減少了子空間的數(shù)量和空間剖分的計(jì)算量。

        1.2 三維物資管理

        通過(guò)對(duì)庫(kù)房和物資進(jìn)行三維建模并將物資信息綁定于三維模型上,庫(kù)房管理員能夠準(zhǔn)確、直觀地了解庫(kù)房中物資的情況,而不必人工進(jìn)入庫(kù)房?jī)?nèi)部翻找,并能夠通過(guò)綁定于三維模型上的物資信息準(zhǔn)確、直觀地分辨出外形相似的不同物資。

        鼠標(biāo)點(diǎn)選物資后標(biāo)明所選中的物資并顯示物資所綁定的相關(guān)信息。由于計(jì)算機(jī)屏幕只能顯示二維圖形,因此在表示三維模型時(shí),會(huì)將三維場(chǎng)景轉(zhuǎn)換為二維場(chǎng)景[8],并顯示在計(jì)算機(jī)屏幕上。在用戶與三維模型做交互時(shí),用戶是在二維場(chǎng)景進(jìn)行操作,而三維模型處于三維場(chǎng)景中,因此需做二維場(chǎng)景和三維場(chǎng)景之間的坐標(biāo)轉(zhuǎn)換。使用Three.js進(jìn)行三維場(chǎng)景構(gòu)建時(shí),三維模型在一個(gè)“畫布”中進(jìn)行二維呈現(xiàn),二維場(chǎng)景的坐標(biāo)原點(diǎn)在“畫布”左上角,向右為X軸正向,向下為Y軸正向,三維場(chǎng)景的坐標(biāo)原點(diǎn)在“畫布”中點(diǎn),向右為X軸正方向,向上為Y軸正方向,X、Y的取值范圍均為[-1,1],且二維場(chǎng)景坐標(biāo)系與三維場(chǎng)景中X、Y軸在同一平面上。設(shè)二維場(chǎng)景中畫布長(zhǎng)寬分別為X、Y,三維場(chǎng)景中坐標(biāo)原點(diǎn)為(X,Y),則有:

        X=(X-0)/2 (2)

        Y=(Y-0)/2 (3)

        設(shè)二維場(chǎng)景中畫布上任一點(diǎn)坐標(biāo)為(X1,Y1),其所對(duì)應(yīng)的三維場(chǎng)景中的坐標(biāo)為(X2,Y2),則有:

        X=(X-X)/(X/2)=(2X/X)-1 (4)

        Y=(Y-Y)/(Y/2)=1-(2Y/Y) (5)

        用戶在二維場(chǎng)景點(diǎn)選三維模型時(shí),通過(guò)將用戶點(diǎn)擊的二維場(chǎng)景坐標(biāo)轉(zhuǎn)換為三維場(chǎng)景坐標(biāo)后,在三維場(chǎng)景里以用戶的視點(diǎn)與所點(diǎn)擊的點(diǎn)做出一條射線,將射線第一個(gè)接觸到的三維模型認(rèn)為是用戶想要在二維場(chǎng)景中點(diǎn)選的三維模型,并將模型上綁定的信息顯示給用戶。

        為頁(yè)面添加物資搜索功能,輸入物資名稱進(jìn)行搜索,搜索到該物資后,將物資的顏色變更為綠色并將視角拉到搜索到的物資處,并顯示物資所綁定的相關(guān)信息。

        2 系統(tǒng)實(shí)現(xiàn)

        輸入物資參數(shù),生成物資的包圍盒如圖1所示。

        碰撞檢測(cè)如圖2所示。

        入庫(kù)如圖3所示。

        三維模型綁定物資信息如圖4所示,便于物資庫(kù)房管理人員對(duì)物資進(jìn)行準(zhǔn)確、直觀的管理。

        物資搜索功能如圖5所示,使物資庫(kù)房管理人員能夠快速檢索想要尋找的物資及物資信息。

        3 結(jié)論

        為實(shí)現(xiàn)醫(yī)療行業(yè)物資庫(kù)房的準(zhǔn)確、直觀管理,本文對(duì)三維倉(cāng)庫(kù)進(jìn)行了研究、設(shè)計(jì)和開(kāi)發(fā),實(shí)現(xiàn)了物資的三維入庫(kù)和管理,并通過(guò)對(duì)空間分解法和包圍盒法的集成應(yīng)用,在充分地發(fā)揮了二者優(yōu)點(diǎn)的同時(shí),解決了不同三維物資實(shí)體之間的碰撞問(wèn)題。本文對(duì)三維倉(cāng)庫(kù)進(jìn)行的研究、設(shè)計(jì)和開(kāi)發(fā),同時(shí)也為其他同類軟件的開(kāi)發(fā)提供了借鑒。

        參考文獻(xiàn):

        [1] de Lucas E,Marcuello P,Parcerisa J M,et al.Ultra-low power render-based collision detection for CPU/GPU systems[C]//2015 48th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO).Waikiki,HI,USA.IEEE,2015:445-456.

        [2] 靳雁霞,任超,李照,等.融合智能算法的變形體碰撞檢測(cè)算法研究[J].計(jì)算機(jī)工程與應(yīng)用,2017,53(19):130-135.

        [3] 李照.融合智能優(yōu)化算法的Snake模型變形體碰撞檢測(cè)算法研究[D].太原:中北大學(xué),2017.

        [4] 惠學(xué)武,孟祥宇.融合包圍盒智能算法的虛擬場(chǎng)景碰撞檢測(cè)研究[J].計(jì)算機(jī)仿真,2021,38(7):209-213.

        [5] 付麗敏.基于BIM的綜合管線碰撞檢測(cè)技術(shù)研究[D].西安:西安建筑科技大學(xué),2017.

        [6] 彭晏飛,盧真真.基于空間剖分和包圍盒的快速碰撞檢測(cè)算法[J].計(jì)算機(jī)應(yīng)用與軟件,2015,32(8):150-153,165.

        [7] 程燕飛.基于WEB的三維廠區(qū)漫游的技術(shù)研究與系統(tǒng)實(shí)現(xiàn)[D].杭州:浙江工業(yè)大學(xué),2016.

        [8] 朱玲玲.自動(dòng)化立體倉(cāng)庫(kù)虛擬仿真系統(tǒng)的開(kāi)發(fā)與設(shè)計(jì)[D].保定:河北大學(xué),2014.

        【通聯(lián)編輯:梁書】

        亚洲视频免费在线观看| 91白浆在线视频| 久久精品国产亚洲AV高清wy| 国产亚洲中文字幕久久网| 亚洲国产精品成人久久| 国产免费av片在线观看播放 | 狠狠色狠狠色综合网老熟女| 蜜桃成人精品一区二区三区| 成人自慰女黄网站免费大全| 欧美极品jizzhd欧美| 亚州精品无码人妻久久| 少妇性l交大片免费快色| 国产精品激情自拍视频| 无码午夜成人1000部免费视频 | 中文字幕亚洲精品在线免费| 亚洲一区自拍高清亚洲精品| 无码中文字幕色专区| 少妇av免费在线播放| 亚洲av毛片在线网站| 国产人妻精品无码av在线| 99re免费在线视频| 亚洲精品国产二区在线观看| 亚洲成av人片在线观看| 午夜精品久久久久成人| 久草热这里只有精品在线| 看国产亚洲美女黄色一级片| 成 人 免 费 黄 色| 国产精品厕所| 亚洲av第一区综合激情久久久| 日韩女优精品一区二区三区| 日韩av精品国产av精品| 亚洲欧美日韩精品久久亚洲区色播 | 国产黄污网站在线观看| 国产特级毛片aaaaaaa高清| 二区久久国产乱子伦免费精品| 日本大片一区二区三区| 国产精品538一区二区在线| 亚洲成aⅴ人在线观看| 亚洲av天堂久久精品| 日韩熟女系列中文字幕| 中文无码乱人伦中文视频在线v|