999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

智慧圖書館用戶畫像圖像處理算法模型設計與實現

2024-02-27 12:17:12杜文龍朱博文柴源
電子設計工程 2024年3期
關鍵詞:模型設計

杜文龍,朱博文,柴源

(1.西安航空學院 圖書館,陜西 西安 710077;2.西安遇賢微電子有限公司,陜西 西安 710000)

隨著大數據、人工智能、云計算和物聯網等數字技術在圖書館智慧化轉型過程中的應用,圖像數據的價值逐漸凸顯[1]。智慧圖書館運用物聯網技術可以感知、識別傳感網絡中的空間、環境、物品和人物的畫像或圖像[2]。但如何對獲取的圖像數據進行計算和處理成為智慧圖書館實踐者面臨的困難,雖已出現圖像變換、圖像分割和邊緣處理等圖像預處理算法和檢測算法,但是缺乏對圖像內容特征的增強識別處理算法。該文設計出用以圖書館用戶畫像圖像處理的算法模型,為深度揭示分析用戶圖像的表情特征、情緒變化和興趣愛好規律提供算法基礎。

1 畫像圖像處理算法模型設計

該文設計的算法模型采用點操作類型,點操作算法指的是對圖像的每個像素都進行相同的點操作。點操作算法模型的計算需求為圖像像素數據流的輸入,點操作圖像處理的運算內容為關系判斷、算術操作、邏輯操作等[3]。適用于點操作類型算法模型的底層算法為灰度變換算法,可以實現圖像在空間域中的增強處理效果。

點運算為點操作型算法模型圖像處理的關鍵處理技術,其核心操作算子是灰度變換函數[4]。點運算是輸出像元由對應輸入像元的灰度值決定的運算方法,算法是灰度變換。灰度變換函數包含線性變換、分段線性變換、反比運算、冪次變換、對數變換等。灰度變換函數均需滿足圖像像素流水輸入的格式要求,灰度變換系列函數的區別之處在于每個函數可能采用不同的計算單元,如乘法、加法、反比和對數,采用算法轉換、近似計算等計算技術進行映射。

點操作型圖像處理的核心算子為四則運算、正余弦函數、灰度變換函數等數學關系公式[5]。因此,可以通過使用等效轉換、近似計算、增量更新、查找表、浮點計算等硬件技術轉換算法來映射實現,從而完成點操作型算法模型核心算子IP 的設計與實現。

該文設計的圖像處理點操作型算法模型如圖1所示,圖像數據從輸入通道流水輸入,經過所需求的計算單元后流水輸出,算法模型架構簡潔。算法模型中僅計算單元需要占用較多的內存資源、硬件資源和緩存空間,模型中其他組成部分所占的計算資源、硬件資源和緩存空間資源極少。模型中圖像處理的流程為:將用戶畫像圖像的每個像素值加上一個固定值后得到一幅新圖像,設計的計算單元本身就是一個加法器,加法器的一個加數是流水輸入的像素值,另一個加數是設定的固定值,加法的和就是流水的輸出值。

圖1 畫像圖像處理算法模型

2 圖像算法模型IP設計與技術實現

該文設計的畫像圖像處理算法模型為點操作類型的處理邏輯。在智慧圖書館的物聯網空間中,傳感可視系統采集到的用戶畫像、用戶圖像數據具有實時化、多變化和動態化特征,因此對圖像處理算法模型的計算效率和增強加速具有較高的技術要求。在圖1 中,核心算子的實現主要依賴于算法轉換、近似計算、增量更新、查找表和浮點計算等計算單元的加速設計處理,完成計算單元的加速設計處理之后,點操作模型核心算子的簡單圖像像素流水數據就能實時得到圖像流水像素結果輸出,通過以上設計和加速處理可以實現點操作類核心算子的IP 過程。

2.1 算法轉換

2.1.1 定常數轉換

在乘除法運算中,如遇到乘數、被乘數或分子與分母是常數的情況,可以直接調用乘法器或除法器解決這個問題[6],但是會消耗一定的DSP運算單元,而DSP 單元往往是FPGA 里面比較少的資源。對于定常數,可以通過一定的轉換方法將其轉換為移位和加法運算,從而減少乘法器和除法器的使用。對于乘法dout=din×255 轉換為dout=din×(256-1)=(din?8)-din,對于乘法例子dout=din×123 轉換為dout=din×(64+32+16+8+2+1)=din×(26+25+24+23+22+21+20),對于除法例子dout=din/25 轉換為=din×40.96×2-10?din×(25+23+2-1+2-2+2-3+2-4+2-6+2-7)×2-10;對于小數的處理則需要先將其轉換為整形進行處理。擴展的位寬也決定了最終計算的精度,這個位寬越大,精度越高,但是也會消耗相對多一點的資源,實際應用中根據精度需求進行選擇[2]。

2.1.2 不等式等效轉換

不等式等效轉換是利用不等式,將復雜的算法轉換為較為簡單的等效不等式[7]。這對去除根號和除法等FPGA 難以處理的算法十分有用。對于開根號不等式例子轉換為a2≥b,轉換后,將開根號轉換成乘法運算,直接調用FPGA 內部的乘法器即可實現;對于除法不等式例子(b>0,d>0) 轉換為a×d>b×c。觸發器是FPGA 里面比較昂貴的資源,上述轉換將其化為乘法運算,減少了不等式計算對于觸發器的消耗[8]。

2.2 近似計算

直接計算函數的一種替代方法是在感興趣的作用域內,用另外一個較為簡單的能得到相似結果的函數進行近似[9]。與算法轉換不同的是,算法轉換不會帶來任何原理的誤差,而近似則會帶來一定的計算誤差。通常情況下,在誤差允許的范圍內,采用近似計算帶來的明顯優勢是計算復雜度的降低及資源消耗的降低[10]。

2.2.1 截斷

用位數較少的近似值來代替位數較多或無限位數時,要有一定的取舍法則。在數值計算中,為了適應各種不同的情況,須采用不同的截取方法。經常使用的截斷方法就是四舍五入。四舍五入通常應用在需要對中間輸出結果進行截斷時,一般情況下,會在前面的計算步驟中預留一定的計算精度。四舍五入的基本原則:若舍去部分小于保留部分最后一位的一個單位的二分之一時,則采用去尾法處理,使所保留的數不變。實際上FPGA 主要處理二進制數據。因此,在小數位的第一位的值是0還是1 決定了是否對結果進行進位。四舍五入的簡單例子如:

式中,?泛指小數位,DW的1~4 為整數位,3~0 為小數位。

2.2.2 泰勒近似

如果函數曲線足夠平滑,在已知函數在某一點的各階導數值的情況下,那么泰勒公式可以用這些導數值作為系數構建一個多項式來近似函數在這一點的鄰域中的值[11],泰勒公式也給出了這個多項式和實際的函數值之間的偏差。泰勒公式定義如下:對于正整數n,若函數f(x)在閉區間[a,b]上n階連續可導,且在(a,b)上n+1 階可導。任取x∈[a,b],它是一定點,則對任意x∈[a,b]成立下式:

式中,f n(a)表示f(a)的n階導數;Rn(x)表示泰勒公式的余項。

當高階項的數量級相對于低階較小時,可以把高階項去掉作為函數的近似。泰勒近似也稱為多項式逼近。使用泰勒公式展開的一個要點是如何選取截斷階數。這往往是由事先規定的計算誤差決定的。以下用一個泰勒展開進行近似計算實例:對除以3 的運算用泰勒近似進行計算,即,若要求計算誤差不大于10-4,則取前5 階段即可達到要求,展開如下:,則其計算誤差為

2.2.3 浮點轉換

如果不采用擁有內部浮點硬核的FPGA,那么用FPGA 作為浮點運算的計算成本較高,因為這會消耗巨大的邏輯資源。在計算精度能滿足一定要求的情況下,通常會選擇將浮點運算轉換成定點運算。

2.3 增量更新

增量更新是指在進行操作時,只更新需要改變的地方,已更新或者無需更新的增強則被忽略,增量更新與完全更新為處理邏輯不同的相對關系。增量更新在流水線處理中特別是二維卷積處理中作用明顯。這是由于在兩個連續的卷積窗口中存在大量的相同元素,如圖2 所示,假定要計算連續5 個數據流的和值,在上一個時刻,5 個待計算的數值是a1′、a1、a2、a3、a4,在該時刻,這5 個待計算的數值是a1、a2、a3、a4、a5,中間4 個計算值均為恒定值,此時如調用4 個加法器進行5 個數的加法存在浪費內存資源的問題。正確的做法為取上一個時刻的計算和值加上首尾的差值。這種增量更新的方法對于較大尺寸的計算帶來的優勢更加明顯。

圖2 增量更新示意

2.4 查找表

2.4.1 查找表的定義

在計算機科學中,查找表為用簡單的查詢操作替換運行時計算的數組或者associate array 的數據結構。相較于復雜的計算過程,從內存中提取數值計算速度更快、速度提升效果更加顯著。

2.4.2 查找表的構建

使用查找表的首要問題就是輸入表的構建。輸入表的構建需要首先得到輸入函數的有效定義域,其次是將輸入的定義域進行等分。這時需考慮等分步長,須在計算精度和表的大小之間做出最佳權衡。通常情況下,待求函數通常通過實數表示,首先將其轉化為整形,這個過程也會帶來一定的舍入誤差。

雖然查找表在精度方面很有效,但隨著輸入寬度的增加,表的尺寸呈指數倍增長,實用的查找表尺寸需要減小輸入的精度。一個簡單的方法是通過刪除最低位來實現,沒有必要對輸入進行舍入,因為表的內容可以根據作用域中函數的適當值設置來獲得最好的結果。另一個減小輸入尺寸的方式是考慮對稱性,例如對于對稱的正余弦函數,對于有效定義域0~2π,只要考慮第一象限范圍[0~],在輸入進行查找表之前首先進行象限判斷,并保存其象限信息,同時將其轉換到第一象限,查表后根據象限信息恢復實際計算值,這樣就將查找表的輸入范圍減小到原來的四分之一[12]。

2.5 浮點計算

在映射為FPGA 邏輯時,如果把浮點運算轉換為定點運算將提升計算工作量[13]。在某些應用中,定點算法是不可行的,要求使用浮點算法的一個常見的例子是矩陣求逆運算[14]。下面將闡述如何實現浮點運算以減少移植的工作量。

2.5.1 IEEE754標準

浮點數(float)是屬于有理數中某特定子集的數的數字表示,在計算機中用以近似表示任意某個實數。具體來說,這個實數由一個整數或定點數(即尾數)乘以某個基數(計算機中通常是2)的整數次冪得到,如圖3 所示,這種表示方法類似于基數為10 的科學計數法。

圖3 浮點數組織結構

IEEE754 規定了4 種表示浮點數值的方式:單精確度(32 位)、雙精確度(64 位)、延伸單精確度(43 比特以上,很少使用)與延伸雙精確度(79 比特以上,通常以80 位實現)。只有32 位模式有強制要求,其他都是選擇性的。

2.5.2 用FPGA實現浮點運算

FPGA 實現圖像處理計算時,可根據計算精度的需求調整尾數和指數的大小,減少對硬件的需求[15]。計算結果與基于IEEE 標準在軟件中執行同樣算法存在差異性。與定點數相同,這需要對近似誤差進行仔細的分析,確保結果是有意義的。

對于浮點數來說,乘法和除法是相對比較簡單的操作。對于乘法運算,位數相乘及指數相加,若位數結果大于2,則需要重新規范化,將其右移一位并且增加指數。由于乘積的位數可能會比表示位多,因此,需要進行舍位處理。兩個指數的和包括兩個偏移量,因此必須減掉一個。輸出值的符號位是輸入符號位的異或。需要附加的邏輯來檢測下溢出、上移除及處理其他的錯誤情況,如處理無窮大和非數。除法與乘法類似,只是尾數相除,指數相減并且在重新規范化時可能包含左移。

加法和減法的實現更加復雜。與原碼表示相同,實際操作的執行取決于輸入的符號。指數須相同,數須對齊。根據指數位的差值,將較小的指數右移相應的位數。在FPGA 上實現時,一個這樣的移位或者較慢(用一些較小的移位器實現)或者價格比較昂貴(用許多寬的多路復用器實現)。有必要為移位的數保留一個額外的位來減少操作引起的誤差。然后根據操作對尾數進行加法或減法運算并對齊進行重新規范化。如兩個非常相近的數相減,許多高有效位可能會消失,因此需要確定最左邊的1 的位置,將其移動到最高位來重新規范化,并對指數進行相應的調整。

2.5.3 Altera的浮點IP核

Altera 增加的硬核浮點為DSP 模塊提供了IEEE754 單精度浮點乘法器及加法器,可實現單精度的乘法、乘加、乘減、累加、支持浮點矢量運算、卷積、點乘和其他線性算術函數,以及使用快速傅里葉變換的復數乘法等。硬浮點模塊的出現大幅降低浮點運算的資源消耗,可減輕設計人員對復雜耗時算法的轉換工作量。浮點IP 內核包括加減乘除運算、倒數、指數、三角函數、平方根與逆平方根、矩陣乘法與求逆、快速傅里葉變換、定點與浮點轉換等。可例化幾個浮點IP 核sin、cos、sqrt、exp,調用的IP 核是 ALTFP_CONVERT、ALTFP_SINCOS、ALTFP_SQRT、ALTFP_EXP。

浮點運算需消耗過多的邏輯資源,可根據實際情況靈活選用浮點運算或定點計算[16]。余弦函數相較于正弦函數,消耗的計算資源較少,如使用浮點三角運算,可將正弦函數轉換成余弦函數后執行計算過程,如此可以節約一定的硬件資源和計算資源。

3 結束語

語音智能識別、自然語言處理、面部情感識別和圖像處理儼然已經成為智慧圖書館領域的研究前沿。感知、挖掘、計算和處理智慧圖書館物聯網感知系統中的用戶畫像圖像數據具有現實意義,如運用圖像處理算法計算用戶的動態性面部表情圖像數據,得出用戶身體心理狀態和情感狀態分析結論,為圖書館的安全應急管理和用戶管理提供技術手段和決策數據支撐。該文設計的圖像處理算法充分考慮映射加速和誤差精度控制,以滿足感知系統中對圖像處理的靈活性、實時性的技術要求。提高圖像處理算法精確度和運行速度的理想方案為設計與實現數據吞吐率高、計算并行的算法加速器體系架構,該文研究和設計的圖像算法模型IP 設計與技術實現為圖像處理算法加速器體系架構奠定了基礎。

猜你喜歡
模型設計
一半模型
重要模型『一線三等角』
何為設計的守護之道?
現代裝飾(2020年7期)2020-07-27 01:27:42
重尾非線性自回歸模型自加權M-估計的漸近分布
《豐收的喜悅展示設計》
流行色(2020年1期)2020-04-28 11:16:38
瞞天過海——仿生設計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
3D打印中的模型分割與打包
FLUKA幾何模型到CAD幾何模型轉換方法初步研究
主站蜘蛛池模板: 国产AV无码专区亚洲精品网站| 欧美狠狠干| 免费国产小视频在线观看| 少妇精品网站| 国产成人免费高清AⅤ| 18禁高潮出水呻吟娇喘蜜芽| 国产91无码福利在线| 亚洲日韩精品欧美中文字幕| www.狠狠| 亚洲综合专区| 亚洲国产欧美国产综合久久 | 亚亚洲乱码一二三四区| 亚洲日本在线免费观看| 亚洲二三区| 色婷婷在线影院| 亚洲一道AV无码午夜福利| 亚洲成人播放| 国产在线精品美女观看| 99视频在线免费看| 免费在线色| 欧美、日韩、国产综合一区| 毛片免费视频| 国产成人久久综合777777麻豆 | 97影院午夜在线观看视频| 久久精品一品道久久精品| 国产美女免费| 日韩美一区二区| 欧美乱妇高清无乱码免费| 国产激情无码一区二区三区免费| 老司国产精品视频91| 亚洲欧美日韩成人在线| 午夜日b视频| 国产成人综合网| 国产杨幂丝袜av在线播放| 一级毛片免费的| 天堂成人在线| 日本一本在线视频| 欧亚日韩Av| 欧美笫一页| 2020亚洲精品无码| 国产中文一区二区苍井空| 久久婷婷国产综合尤物精品| 欧美三级视频在线播放| 国产成+人+综合+亚洲欧美| 18禁影院亚洲专区| 精品国产成人高清在线| 国产喷水视频| 波多野结衣视频网站| 日韩在线网址| 青草免费在线观看| 好吊色妇女免费视频免费| 香蕉99国内自产自拍视频| 国产激情无码一区二区APP| 亚洲二区视频| 精品无码人妻一区二区| 国产在线一区二区视频| 无码国产偷倩在线播放老年人 | 美女被躁出白浆视频播放| 国产香蕉在线视频| 国产日本欧美亚洲精品视| 国产主播一区二区三区| 麻豆国产精品| 在线精品亚洲国产| 成年av福利永久免费观看| 欧美成人亚洲综合精品欧美激情| 九九视频免费在线观看| 亚洲手机在线| 国产手机在线ΑⅤ片无码观看| 欧美成人一级| 国产激情影院| 亚洲日韩图片专区第1页| 无码人中文字幕| 国产在线精品99一区不卡| 啊嗯不日本网站| 在线日本国产成人免费的| lhav亚洲精品| 这里只有精品在线| 国产精品视频猛进猛出| 国产va免费精品| 看你懂的巨臀中文字幕一区二区 | 中文字幕1区2区| 免费全部高H视频无码无遮掩|