劉文林
(南昌職業(yè)大學(xué) 信息技術(shù)學(xué)院,南昌 330500)
海量圖像在存儲(chǔ)時(shí)對(duì)于服務(wù)器或者存儲(chǔ)終端的性能需求較高,需保證海量圖像存儲(chǔ)安全的同時(shí),降低其內(nèi)存占用率[1],避免占用過多內(nèi)存,影響存儲(chǔ)終端的運(yùn)行性能;同時(shí)在海量圖像搜索所需圖像的耗時(shí)較大[2]。常見的圖像存儲(chǔ)方法有分布式存儲(chǔ)、邊緣存儲(chǔ)以及備份存儲(chǔ)等,這些方法均可完成圖像信息存儲(chǔ),但會(huì)發(fā)生圖像信息分散、質(zhì)量受損等情況。為保證海量圖像信息的存儲(chǔ)效果,文獻(xiàn)[3]主要以降低海量圖像存儲(chǔ)內(nèi)存占用率為核心目標(biāo),采用分形編碼和LIC 混沌系統(tǒng)完成海量圖像的壓縮處理,實(shí)現(xiàn)海量圖像的壓縮存儲(chǔ);但是該方法在應(yīng)用過程中,會(huì)降低圖像質(zhì)量;文獻(xiàn)[4]主要以實(shí)現(xiàn)圖像分類存儲(chǔ),提升圖像存儲(chǔ)后的搜索效率為目的,利用密度劃分算法,進(jìn)行圖像聚類,并按照?qǐng)D像類別完成存儲(chǔ);但是該方法在應(yīng)用過程中,無法解決內(nèi)存占用率較大問題。數(shù)字技術(shù)指的是利用計(jì)算機(jī)等相關(guān)技術(shù)對(duì)圖像、文字或者視頻影像等信息進(jìn)行編碼、壓縮等處理,同時(shí)能夠完成信息的運(yùn)算、加工、存儲(chǔ)、傳送或者還原等。本文為實(shí)現(xiàn)海量圖像存儲(chǔ),以多云架構(gòu)為支撐,并引入數(shù)字技術(shù)設(shè)計(jì)數(shù)字技術(shù)支持下的海量圖像信息多云存儲(chǔ)平臺(tái)。
多云存儲(chǔ)指的是整合多個(gè)內(nèi)部或者外部的云存儲(chǔ)服務(wù)組成的多云架構(gòu)[5],通過該結(jié)構(gòu)協(xié)同完成相關(guān)服務(wù)。本文為實(shí)現(xiàn)海量圖像的可靠存儲(chǔ),文中采用多云架構(gòu)為支撐,結(jié)合數(shù)字技術(shù),設(shè)計(jì)數(shù)字技術(shù)支持下的海量圖像信息多云存儲(chǔ)平臺(tái)。通過該平臺(tái)解決海量圖像存儲(chǔ)內(nèi)存占用過大情況,并保證圖像存儲(chǔ)安全性。該平臺(tái)架構(gòu)如圖1 所示。平臺(tái)整體分為多云存儲(chǔ)模塊和本地應(yīng)用模塊。
圖1 基于多云架構(gòu)的海量圖像存儲(chǔ)平臺(tái)Fig.1 Massive image storage platform based on multi-cloud architecture
(1)多云模塊:該模塊利用REST 原則實(shí)現(xiàn)Google Cloud、Amazon S3、Microsoft Azure 等組成的多云架構(gòu)。每種云服務(wù)提供的服務(wù)接口存在差異,為保證多云服務(wù)之間的協(xié)同調(diào)用效果和效率,結(jié)合各個(gè)云服務(wù)的公共API 獲取一個(gè)抽象基類,所有云服務(wù)則繼承這個(gè)基類,以此實(shí)現(xiàn)多云的協(xié)同服務(wù),將各個(gè)網(wǎng)絡(luò)平臺(tái)中海量圖像信息均遷移至多云架構(gòu)中,為本地用戶提供所需的圖像信息;同時(shí)存儲(chǔ)本文服務(wù)器上傳的海量圖像。
(2)本地應(yīng)用模塊:該模塊在多云模塊客戶端的控制下,實(shí)現(xiàn)本地服務(wù)器和多云模塊之間通信,調(diào)用多云模塊中的海量圖像對(duì)其進(jìn)行加密和壓縮處理后,在進(jìn)行圖像上傳存儲(chǔ)過程中,降低海量圖像對(duì)云服務(wù)器或者本地服務(wù)器內(nèi)存占用率,并且能夠通過篩選機(jī)制,精準(zhǔn)獲取所需的圖像信息。
1.2.1 多云模塊結(jié)構(gòu)
多云模塊是系統(tǒng)的重要模塊,其主要是實(shí)現(xiàn)海量圖像信息的存儲(chǔ),在存儲(chǔ)過程中,為保證存儲(chǔ)圖像信息的存儲(chǔ)效果和存儲(chǔ)安全,設(shè)計(jì)多云模塊結(jié)構(gòu),該模塊整體包含5 個(gè)部分:客戶端、第三方驗(yàn)證、云服務(wù)器、交互界面、私鑰產(chǎn)生器。該模塊的結(jié)構(gòu)如圖2 所示。
圖2 多云模塊結(jié)構(gòu)Fig.2 Cloudy module structure
(1)客戶機(jī):該部分主要是將海量圖像數(shù)據(jù)的擁有者,可將海量圖像數(shù)據(jù)上傳至云服務(wù)器中,也可將云服務(wù)器中的海量圖像信息下載或者調(diào)用至本文服務(wù)器中。
(2)第三方驗(yàn)證:該部分屬于一個(gè)獨(dú)立可信的云服務(wù)提供,其主要作用是為海量圖像存儲(chǔ)提供數(shù)據(jù)服務(wù)或者公開驗(yàn)證服務(wù),保證海量圖像的存儲(chǔ)效果。
(3)云服務(wù)器:該服務(wù)器主要是由多個(gè)用于海量圖像存儲(chǔ)服務(wù)器組成,為用戶提供可靠的存儲(chǔ)服務(wù)。
(4)交互界面:該部分作為客戶機(jī)和云存儲(chǔ)服務(wù)之間的交互界面,是呈現(xiàn)海量圖像存儲(chǔ)結(jié)果??蛻魴C(jī)向交互界面下達(dá)存儲(chǔ)請(qǐng)求,交互界面接受請(qǐng)求后,將數(shù)據(jù)分發(fā)給云服務(wù)器中;同時(shí)交互界面能夠接受第三方驗(yàn)證服務(wù)。
(5)私鑰產(chǎn)生器:該部分的主要作用是保證海量圖像的存儲(chǔ)安全,其是根據(jù)用戶的身份標(biāo)識(shí)生成對(duì)應(yīng)的私鑰實(shí)體,保證用戶的圖像存儲(chǔ)服務(wù)。
1.2.2 海量圖像多云存儲(chǔ)均衡分流
云模塊需對(duì)待存儲(chǔ)的海量圖像進(jìn)行均衡分流,主要采用K 均值聚類算法計(jì)算海量圖像的初始聚類中心。并完成圖像信息分流階段聚類中心的更新,以此實(shí)現(xiàn)海量圖像的分類存儲(chǔ),實(shí)現(xiàn)去均衡分流,保證存儲(chǔ)效率。海量圖像信息具有高維特點(diǎn),圖像信息的特征組成的聚類中心數(shù)據(jù)為l,初始聚類中心數(shù)量為p,圖像信息類別數(shù)量為L,圖像信息特征和其誤差方差分別為y 和F,待分流存儲(chǔ)的海量圖像信息特征集為Dj,對(duì)Dj進(jìn)行均值化處理,可獲取結(jié)果,此時(shí)圖像信息特征類別計(jì)算公式為
已經(jīng)劃分至不同類別的圖像信息特征集合用Th(h=1,2,…,l)表示,其聚類中心為Dh,則T={Y},如果任意2 個(gè)圖像特征分別為Y 和Z,2 個(gè)特征間的歐式距離為d(Y,Z)。設(shè)定TDq={Dh},表示初始聚類中心,將海量圖像特征劃分至l 個(gè)聚類中心中,其計(jì)算公式為
式中:g=1,2,…,l;Dg表示第g 個(gè)聚類中心。
對(duì)聚類獲取的圖像特征進(jìn)行迭代處理,以此生成新的數(shù)據(jù)特征聚類中心,用TDq+1表示;如果q=0,聚類中心用TD0表示;計(jì)算所有待存儲(chǔ)圖像特征聚類中心,以此完成聚類中心的更新,并采用F 作為圖像分流存儲(chǔ)的判斷標(biāo)準(zhǔn),如果F 的結(jié)果較大,則取法滿足分流存儲(chǔ)標(biāo)準(zhǔn),則重新進(jìn)行的圖像特征進(jìn)行迭代處理,并執(zhí)行后續(xù)操作;如果滿足分流存儲(chǔ),則獲取圖像的分流存儲(chǔ)結(jié)果。
1.3.1 多目標(biāo)加密數(shù)字水印技術(shù)結(jié)構(gòu)
本地應(yīng)用模塊在進(jìn)行海量圖像上傳存儲(chǔ)過程中,均需保證圖像的完整性,因此,應(yīng)用模塊均在本地服務(wù)器中設(shè)置數(shù)字水印嵌入端口,該端口主要依據(jù)數(shù)字加密技術(shù)對(duì)海量圖像進(jìn)行加密,該技術(shù)能夠滿足多目標(biāo)的加密需求。該技術(shù)的整體結(jié)構(gòu)如圖3所示。數(shù)字水印技術(shù)在進(jìn)行海量圖像加密過程中,是以圖像的幀數(shù)變化情況設(shè)計(jì)加密階層數(shù)量,各個(gè)階層均按照加密標(biāo)準(zhǔn)完成圖像加密;同時(shí)在初始加密時(shí),需設(shè)定動(dòng)態(tài)加密序列,以此保證加密體系的穩(wěn)定;最終采用數(shù)字水印技術(shù)生成圖像加密目標(biāo)。
圖3 多目標(biāo)加密數(shù)字水印技術(shù)結(jié)構(gòu)Fig.3 Structure of multi-target encrypted digital watermarking technology
1.3.2 加密圖像灰度處理
在加密過程中,密鑰分為公鑰和私鑰,并且其加密范圍存在一定局限性,因此密鑰在設(shè)定時(shí),需充分結(jié)合保護(hù)需求以雙向保護(hù)加密為目標(biāo),設(shè)定加密層級(jí);同時(shí)需保證其和初始設(shè)定的加密標(biāo)準(zhǔn)一致,以此逐步增加加密范圍,保證多目標(biāo)的加密效果。在加密過程中,為提升海量圖像加密的穩(wěn)定性,可對(duì)圖像的像素值進(jìn)行轉(zhuǎn)換,文中主要采用圖像灰度處理方法完成。在圖像中選擇一個(gè)位置,將該位置定義為測定的主要目標(biāo),并采用隨機(jī)的方式在該位置上設(shè)定控制監(jiān)測節(jié)點(diǎn),將其和數(shù)字水印技術(shù)相結(jié)合,形成關(guān)聯(lián)搭接,此時(shí)計(jì)算圖像的灰度值,其計(jì)算公式為
式中:Y 表示圖像灰度值;ω 表示分解范圍;ξ 表示堆疊范圍;W 表示圖像重構(gòu)次數(shù);ε 表示設(shè)定的加密偏差。
將上述計(jì)算結(jié)果和數(shù)字水印技術(shù)相結(jié)合,可進(jìn)一步提升圖像加密的完整性。
圖像加密完成后,為降低海量圖像的內(nèi)存占用率,文中采用數(shù)字技術(shù)中的數(shù)據(jù)壓縮方法對(duì)海量圖像進(jìn)行無損壓縮編碼。整個(gè)壓縮結(jié)構(gòu)如圖4 所示。
圖4 海量圖像無損壓縮結(jié)構(gòu)Fig.4 Lossless compression structure of massive images
在整個(gè)壓縮過程中,需結(jié)合小波變換算法完成,通過小波變換對(duì)海量圖像進(jìn)行無損壓縮編碼,在壓縮前需先完成圖像分解,其計(jì)算公式為
式中:a0和b0均表示參數(shù);m、n 均表示離散值;x 表示圖像積分函數(shù)信號(hào)。
圖像分解后,確定此時(shí)的二維小波,其計(jì)算公式為
式中:bx和by均表示圖像的維度平移,其中x 和y 表示平移量。
對(duì)壓縮后的圖像信號(hào)進(jìn)行空間域處理,以此保證圖像的二維變換效果,利用小波點(diǎn)提升生成雙正交波算法,以此對(duì)圖像分解信號(hào)進(jìn)行預(yù)測和更新,完成圖像壓縮。
以某廣告企業(yè)在運(yùn)營過程中需要海量圖像作為實(shí)例研究對(duì)象,該企業(yè)擁有企業(yè)云UniCloud,采用該企業(yè)云完成Google Cloud、Amazon S3、Windows Azure 和百度云共4 個(gè)云服務(wù),構(gòu)建多云架構(gòu),用于實(shí)現(xiàn)海量圖像存儲(chǔ)。該企業(yè)共有數(shù)10 臺(tái)本地服務(wù)器,本文僅選擇其中的5 臺(tái)作為測試使用,每臺(tái)服務(wù)器內(nèi)的功能軟件清單以及服務(wù)器的功能參數(shù)詳情如表1 所示。
表1 功能軟件清單以及服務(wù)器的功能參數(shù)詳情Tab.1 List of functional software and details of functional parameters of the server
為驗(yàn)證本文平臺(tái)的海量圖像均衡分流效果,以數(shù)據(jù)流標(biāo)準(zhǔn)方差作為評(píng)價(jià)指標(biāo),其主要用于衡量海量圖像分流存儲(chǔ)的穩(wěn)定性,值越大表示穩(wěn)定性越差。對(duì)于不同維度圖像進(jìn)行均衡分流存儲(chǔ)后,數(shù)據(jù)流標(biāo)準(zhǔn)方差如圖5 所示。依據(jù)圖5 可知,隨著存儲(chǔ)圖像的數(shù)量的不斷增加,本文平臺(tái)分流處理后數(shù)據(jù)流標(biāo)準(zhǔn)方差在0.27 以下,分流存儲(chǔ)的均衡能力較好。
圖5 海量圖像分流存儲(chǔ)的穩(wěn)定性測試結(jié)果Fig.5 Stability test results of massive image shunt storage
為驗(yàn)證本文平臺(tái)的海量圖像多云存儲(chǔ)效果,以內(nèi)存占用率和多云服務(wù)器的負(fù)載均衡度作為評(píng)價(jià)指標(biāo),本文平臺(tái)在進(jìn)行不同大小圖像存儲(chǔ)時(shí),內(nèi)存占用率和負(fù)載均衡度的計(jì)算結(jié)果如圖6 所示。依據(jù)圖6 可知,隨著存儲(chǔ)圖像大小增加,采用本文平臺(tái),圖像存儲(chǔ)內(nèi)存占用率在22.6%以下,因此可顯著降低海量圖像存儲(chǔ)后的內(nèi)存占用率;負(fù)載均衡度均在94.1%以上,可極大程度保證海量圖像存儲(chǔ)的均衡性。
圖6 海量圖像多云存儲(chǔ)效果Fig.6 Multi-cloud storage effect of massive images
為進(jìn)一步驗(yàn)證本文平臺(tái)的海量圖像存儲(chǔ)效果,文中隨機(jī)選擇海量圖像壓縮存儲(chǔ)后,圖像原始圖像和存儲(chǔ)圖像結(jié)果,如圖7 所示。由于篇幅有限,結(jié)果僅隨機(jī)呈現(xiàn)一幅圖像的測試結(jié)果。依據(jù)圖7 測試結(jié)果可知,采用本文平臺(tái)進(jìn)行海量圖像壓縮存儲(chǔ)后,存儲(chǔ)壓縮后的圖像質(zhì)量和存儲(chǔ)前原始圖像質(zhì)量一致,能夠保證圖像質(zhì)量不會(huì)發(fā)生損壞,因此,本文平臺(tái)具有較好的海量圖像存儲(chǔ)能力。
圖7 圖像壓縮存儲(chǔ)測試結(jié)果Fig.7 Image compression and storage test results
隨著圖像的不斷增加,海量圖像的存儲(chǔ)成為首要解決的問題,即為在保證圖像無損且內(nèi)存占用率最小的情況下,實(shí)現(xiàn)海量圖像信息存儲(chǔ),因此,設(shè)計(jì)數(shù)字技術(shù)支持下的海量圖像信息多云存儲(chǔ)平臺(tái),并對(duì)該平臺(tái)的應(yīng)用效果進(jìn)行相關(guān)測試。測試結(jié)果顯示,本文平臺(tái)具有較好的應(yīng)用性能,其能夠均衡實(shí)現(xiàn)海量圖像分流存儲(chǔ),并且存儲(chǔ)效果良好,可降低海量圖像存儲(chǔ)時(shí)內(nèi)存占用率,并且保證壓縮存儲(chǔ)后的圖像質(zhì)量。