王相超,陳龍,顏斌
(杭州電子科技大學(xué) 電子信息學(xué)院,浙江杭州,310018)
圖像的邊緣,也稱圖像輪廓,是一種重要的視覺信息。作為圖像分析處理、計(jì)算機(jī)視覺的基本步驟,圖像邊緣檢測結(jié)果的準(zhǔn)確性將直接影響到機(jī)器視覺系統(tǒng)對(duì)客觀世界的理解[1]。在機(jī)器視覺領(lǐng)域,圖像邊緣檢測常用的算子包括Sobel 算子,Canny 算子,Prewitt 算子和Robert 算子[2],各類算子針對(duì)不同情景,其使用各具優(yōu)勢。其中,Sobel 算子較其他算子有更高的邊緣檢測精度和抗躁能力,對(duì)于各類圖片邊緣檢測有較強(qiáng)的泛化能力和魯棒性而被廣泛應(yīng)用[3],但傳統(tǒng)的X,Y 兩方向的Sobel 算子對(duì)圖像邊緣信息的提取能力仍然有限,在檢測水平、豎直以外方向的邊緣信息時(shí),容易引入噪聲或檢測失敗[4-5]而降低識(shí)別準(zhǔn)確率。同時(shí),無論邊緣檢測算法使用哪種算子,其先決條件都是圖像本身要清晰可辨,算法對(duì)待處理圖像的光照條件,明亮程度有一定要求。當(dāng)待處理圖像總體色度偏低,光照條件不足或者光照分布極其不均勻,應(yīng)用邊緣檢測算法得到的識(shí)別準(zhǔn)確率將大大降低[6]。由此,本文提出了一種在FPGA 平臺(tái)搭建的,基于直方圖增強(qiáng)與8 方向Sobel 算子的圖像邊緣檢測系統(tǒng),能夠快速,準(zhǔn)確地提取缺乏光照條件下所拍攝圖片的邊緣信息。
直方圖均衡化則是一種用于增強(qiáng)動(dòng)態(tài)范圍偏小圖像的對(duì)比度的算法。圖片拍攝時(shí)光照過強(qiáng)過弱在其灰度統(tǒng)計(jì)直方圖上的反映:灰度集中于高亮部分和低亮部分,如圖1 所示,圖片整體色度偏暗,統(tǒng)計(jì)直方圖所含灰度值頻次集中于低灰度部分,圖片中諸如人臉輪廓,前景與背景差等細(xì)節(jié)部分難以突出。對(duì)于此類圖片使用直方圖均衡化算法,可以將灰度圖像的直方圖分布重新映射為均勻分布,增強(qiáng)圖像對(duì)比度從而使圖像細(xì)節(jié)信息更為突出[7],如圖2 所示。
圖1 低色度圖片與直方圖
圖2 直方圖均衡化結(jié)果
直方圖均衡化基于對(duì)灰度圖像的統(tǒng)計(jì)直方圖,以256灰度級(jí)圖像為例,所謂統(tǒng)計(jì)直方圖,就是遍歷灰度圖每個(gè)像素,統(tǒng)計(jì)每個(gè)像素灰度級(jí)的出現(xiàn)頻次,數(shù)學(xué)表達(dá)如式1,ni為灰度值i 對(duì)應(yīng)的出現(xiàn)頻次,N 為圖像總像素?cái)?shù)。
而直方圖均衡化本質(zhì)是改變灰度值的概率分布使其成為均勻分布,需要借助變換函數(shù)對(duì)原分布進(jìn)行操作。由概率論理論推導(dǎo)可知,以函數(shù)P 的累積分布概率函數(shù)作為變換函數(shù)Sk,其分布滿足均勻分布,數(shù)學(xué)表達(dá)如公式2。
因此,在原統(tǒng)計(jì)直方圖的基礎(chǔ)上,對(duì)頻次進(jìn)行累加,得到圖片累計(jì)直方圖,該分布即為直方圖均衡化的目標(biāo)函數(shù),而累計(jì)直方圖得到的結(jié)果是灰度級(jí)累計(jì)概率,因此需要將結(jié)果乘總灰度級(jí)個(gè)數(shù)完成映射。
圖像的邊緣是指其圖像灰度值或紋理結(jié)構(gòu)等信息的突變位置,而Sobel 算子在設(shè)計(jì)原理上為一階離散差分算子,為大小固定的方陣。算子通過與圖像子模板的卷積運(yùn)算[8](式3)可以計(jì)算灰度圖像的近似梯度值。
經(jīng)典的Sobel 邊緣檢測算法包括水平X 方向與豎直Y方向兩個(gè)算子,算子常選用的模板尺寸為3×3,如圖3 所示。X 方向算子以中間列作為基準(zhǔn),計(jì)算左右兩列卷積的差值,在計(jì)算機(jī)中,差分運(yùn)算等價(jià)于微分運(yùn)算,即可求出圖片X 方向梯度值。Y 方向運(yùn)算同理。最終將X,Y 方向得到的梯度信息進(jìn)行求和,與設(shè)定的閾值相比得到邊緣信息。
圖3 傳統(tǒng)Sobel 算子
經(jīng)過圖像灰度化與模板獲取后,將每次計(jì)算得到的8 個(gè)方向的梯度值求平方和再開根號(hào)(式4),每個(gè)結(jié)果Out 與算法設(shè)定的閾值threshold 相比較進(jìn)行二值化,獲得圖像邊緣信息Edge(式5)。
圖4 8 方向Sobel 算子
3.3.1 圖像3×3 模板獲取
能源消費(fèi)結(jié)構(gòu)不斷優(yōu)化,與2015年相比,2030年煤、油比重分別下降15.2%和5.6%,天然氣和非化石能源比重分別上升8.0%和12.8%[4-5]。
圖5 算法流程圖
由于傳統(tǒng)的Sobel 算子僅計(jì)算水平與垂直兩個(gè)方向的圖像灰度梯度,會(huì)導(dǎo)致邊緣檢測不連續(xù)或不夠準(zhǔn)確。改進(jìn)型的8 方向Sobel 算子較之傳統(tǒng)算法,共使用到8 個(gè)方向Sobel 算子。一一對(duì)應(yīng)于圖像3×3 模板360°范圍內(nèi)的均勻劃分空間。使算法能夠充分地提取圖像邊緣信息[9]。算子模板如圖4 所示。
The sun sets earlier in May and July, summer-rain is so much that people get sad.
系統(tǒng)使用Inter 公司旗下Cyclone 4 系列芯片—EP4CE10F17C8N 作為主控,普通邏輯資源豐富,擁有約10k 的邏輯單元。通過晶振電路可產(chǎn)生50MHz 方波,經(jīng)過鎖相環(huán)PLL 分頻產(chǎn)生33.3MHz 時(shí)鐘用于驅(qū)動(dòng)VGA 顯示屏。使用ROM 模塊用于存儲(chǔ)原始的BMP 圖片,使用兩個(gè)RAM用于進(jìn)行灰度直方圖統(tǒng)計(jì)與均衡化,使用若干按鍵用于顯示系統(tǒng)各環(huán)節(jié)圖像處理的結(jié)果。VGA 分辨率使用800×480。總體結(jié)構(gòu)如圖6 所示。系統(tǒng)仿真電路設(shè)計(jì)圖如圖7 所示。
圖6 系統(tǒng)總體結(jié)構(gòu)圖
圖7 系統(tǒng)電路圖
式中ram_data_sum 為累計(jì)直方圖中灰度的累計(jì)頻次,10000 為原圖總像素?cái)?shù),255 為總灰度級(jí)。gray_s 為均衡化后的灰度值。
本系統(tǒng)使用FPGA 內(nèi)置的ROM 模塊對(duì)原始圖片進(jìn)行儲(chǔ)存與讀取,其集成電路如圖8 所示。ROM 存儲(chǔ)圖片的mif 文件信息,模塊包括兩個(gè)輸入端口,時(shí)鐘輸入與地址端輸入,輸出為對(duì)應(yīng)地址的圖片數(shù)據(jù)。
仿真波形如圖10 所示。第一行為RAM 輸入時(shí)鐘,第二三行分別為原圖灰度值與直方圖均衡化后的灰度值。
圖8 ROM 模塊
圖片mif 文件使用BMP2Mif 轉(zhuǎn)換軟件生成,原圖為RGB888 格式的BMP 圖片,生成mif 文件對(duì)應(yīng)的輸出數(shù)據(jù)大小為24bit。
由于系統(tǒng)自帶ROM 模塊進(jìn)行數(shù)據(jù)存儲(chǔ)的容量有限,最多可以保存200×200 大小的圖片,影響結(jié)果觀感。因此,設(shè)計(jì)了圖片放大算法,輸入圖片為100×100,在顯示時(shí)擴(kuò)大至800×480。
第一行為原圖像素灰度值,第二行為濾波后像素灰度值。
圖片放大算法利用其顯示原理,VGA 屏幕橫坐標(biāo)位置每8 個(gè)坐標(biāo)單位顯示實(shí)際圖片的同一坐標(biāo)信息,縱坐標(biāo)位置每4.8個(gè)坐標(biāo)單位顯示實(shí)際圖片同一信息,算法公式如公式6。
2.2 兩組新生兒指標(biāo)比較 觀察組新生兒出生體質(zhì)量、巨大兒4例(5.00%),對(duì)照組分別為(3.81±0.73)kg和15例(18.75%),差異有統(tǒng)計(jì)學(xué)意義(t=-8.33,P=0.02;χ2=21.60,P=0.00);兩組新生兒窒息率均為2.50%(2/80),差異無統(tǒng)計(jì)學(xué)意義(χ2=1.31,P=1.24)。
式中rom_addr 為ROM 的輸入地址,每個(gè)地址保存圖片一個(gè)像素信息,pixel_xpos 為VGA 屏掃描的橫坐標(biāo),pixel_ypos 為對(duì)應(yīng)縱坐標(biāo)。100 為輸入圖片的寬度。
3.2.1 圖像灰度化設(shè)計(jì)
由于從ROM 中讀取的為BMP 圖片,如果直接進(jìn)行邊緣檢測 則是對(duì)RGB 三通道色彩進(jìn)行單獨(dú)檢測,但是各原色在同一像素位置的梯度大小方向可能各不相同,得到的邊緣信息也不同從而發(fā)生檢測錯(cuò)誤。因此需要將圖片轉(zhuǎn)換為單通道,即灰度化。
RGB 灰度化公式如下:
而FPGA 進(jìn)行浮點(diǎn)運(yùn)算較為復(fù)雜,因此這里采取乘加與移位的近似計(jì)算。
rom_data 共24bit,每8bit 對(duì)應(yīng)原圖一個(gè)通道。完成了對(duì)原圖的灰度化。
3.2.2 直方圖均衡化設(shè)計(jì)
在設(shè)計(jì)上,系統(tǒng)使用兩個(gè)單端口RAM 模塊對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ)來完成直方圖與累計(jì)直方圖的統(tǒng)計(jì)。RAM 模塊集成電路如圖9所示。
圖9 RAM 模塊
第一個(gè)RAM 用于對(duì)原始直方圖進(jìn)行統(tǒng)計(jì),地址端從0~255依次遍歷,當(dāng)對(duì)應(yīng)位置圖像像素灰度值與地址匹配時(shí),寫入的data 數(shù)據(jù)自增1,當(dāng)遍歷完整幅圖像也就完成了對(duì)原始灰度圖的直方圖統(tǒng)計(jì)。第二個(gè)RAM 用于計(jì)算累計(jì)直方圖,當(dāng)從RAM1 中讀取的data 數(shù)據(jù)不為0 時(shí),對(duì)寫入數(shù)據(jù)進(jìn)行累加,再通過歸一化完成直方圖均衡化(式9)。
系統(tǒng)經(jīng)過初始化,首先從ROM 模塊中讀取存儲(chǔ)的BMP圖片,經(jīng)過圖像放大后進(jìn)行灰度化處理,使用兩個(gè)RAM 模塊分別用于直方圖統(tǒng)計(jì)與累計(jì)直方圖計(jì)算,經(jīng)過歸一化處理后得到圖像增強(qiáng)的結(jié)果,使用按鍵1 顯示于顯示屏上。使用高斯卷積核對(duì)增強(qiáng)圖片進(jìn)行濾波,結(jié)果使用按鍵2 顯示。取濾波后的圖像3×3 模板分別與8 方向Sobel 算子進(jìn)行卷積,求出梯度和與閾值比較,得到邊緣檢測結(jié)果,使用按鍵3 顯示。
但是,商業(yè)銀行金融產(chǎn)品單一,而且創(chuàng)新效果并不理想,產(chǎn)品同質(zhì)化比較嚴(yán)重,這些都是商業(yè)銀行需要進(jìn)行金融產(chǎn)品創(chuàng)新的重要原因。
圖10 直方圖均衡化仿真結(jié)果
圖11 移位寄存器生成圖像模板
在確定所使用的算子后,邊緣檢測算法流程如圖5 所示。
FPGA 中圖像數(shù)據(jù)的保存形式是串行數(shù)據(jù)流,通過使用帶taps 的移位寄存器模塊,將串行數(shù)據(jù)轉(zhuǎn)化為3×3 的模板數(shù)據(jù)。每次取圖片3 個(gè)像素點(diǎn)信息于寄存器中,在第二個(gè)時(shí)鐘到來時(shí),間隔一行像素進(jìn)行存儲(chǔ),重復(fù)三次即獲得了圖像3×3 模板數(shù)據(jù)。
移位寄存器模塊仿真結(jié)果如圖12 所示。
圖12 圖像模板仿真結(jié)果
3.3.2 圖像高斯濾波實(shí)現(xiàn)與仿真
從圖2可以看出,創(chuàng)作謝里丹風(fēng)格唐草紋樣,確定好主花位置,畫出半徑為3cm的圓,然后圍繞主花利用sin曲線為基線繪制葉子,使葉子形成圓形的渦卷。以波狀線與切圓線相組合,并向兩個(gè)相反方向波卷,組成“S”形枝蔓連綿的紋樣。圓圈是參考線,葉的線條尾端要自然地接近圓圈但不能相交。一直保持線的末端離圓圈1~2mm。葉片數(shù)量一般在8~10片。
與Sobel 原理類似,在獲取圖像3×3 模板后,在FPGA 上設(shè)計(jì)高斯卷積核,與模板進(jìn)行卷積運(yùn)算得到結(jié)果。系統(tǒng)設(shè)計(jì)時(shí),卷積操作通過乘加器完成。經(jīng)過高斯濾波,消除直方圖均衡化對(duì)灰度圖像帶來的銳化噪聲,提高邊緣檢測的準(zhǔn)確率。
全面優(yōu)化基于B/S架構(gòu)的高校人力資源管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)方案,提升高校人力資源管理質(zhì)量,首先要著重設(shè)計(jì)基于B/S架構(gòu)的人力資源管理平臺(tái),充分發(fā)揮人力資源管理職能,從而有效提升本校的人力資源管理質(zhì)量。目前,人力資源管理具備人力資源規(guī)劃、招募與甄選職能,人力資源開發(fā),薪酬福利管理,職業(yè)生涯規(guī)劃,勞資關(guān)系管理和人力資源研究等六種職能,在構(gòu)建人力資源管理平臺(tái)的過程中,要緊密融合這六項(xiàng)職能,促進(jìn)人力資源管理體系的良好發(fā)展。
高斯卷積核如圖13 所示。
圖13 高斯卷積核示意圖
可以看出高斯濾波是對(duì)原圖像模板各位置加權(quán)求平均值得到濾波結(jié)果。模板窗口滑動(dòng)遍歷整幅圖片,得到高斯濾波結(jié)果。仿真結(jié)果如圖14 所示。
圖14 高斯濾波仿真結(jié)果
圖15 Sobel 算子參數(shù)定義
從諾利地圖到瓦齊城繪:18 世紀(jì)羅馬微觀城市空間的創(chuàng)新研究引介 黃健文 張偉國 徐 瑩2018/04 57
3.3.3 Sobel 邊緣檢測與仿真
左小龍把摩托車停在一間酒店門口,琢磨著看大局這里超不過一百元一晚上。雖然所剩下的錢不多,但好歹比搞一個(gè)小姐便宜。到了前臺(tái),左小龍問:“多少錢?單人間?!?/p>
我站在這里覺得很尷尬,相比那些城里人,我總覺自己是個(gè)冒牌貨。看打球的除了我,還有個(gè)坐輪椅的老頭,他眼神怪怪地瞅著我,讓我感到渾身不自在。
在獲得濾波圖像數(shù)據(jù)之后,同樣使用移位寄存器,將濾波數(shù)據(jù)串行輸入轉(zhuǎn)換為3×3 的模板數(shù)據(jù),再依次與8 個(gè)Sobel 算子進(jìn)行乘加器卷積運(yùn)算。需要注意的是,在8 個(gè)Sobel 算子設(shè)計(jì)時(shí),其中的負(fù)數(shù)需要以補(bǔ)碼形式定義。以90 度方向算子和180 度方向算子定義為例。
參數(shù)定義中的ff與fe 分別對(duì)應(yīng)十進(jìn)制的-1 與-2。
教工黨支部的建設(shè)是一項(xiàng)系統(tǒng)化工程,發(fā)展歷史較短的民辦高校的黨建工作,需要進(jìn)一步解放思想,深入研究,研究建設(shè)民辦高校教工黨支部建設(shè)的新思路和新方法,不斷提高民辦高校教工黨支部工作的針對(duì)性和實(shí)效性,充分發(fā)揮教工黨支部的主體作用,為高等學(xué)校基層黨組織的建設(shè)注入新的活力,開創(chuàng)新的局面。
與高斯濾波計(jì)算過程有差別的是。邊緣檢測算法還需進(jìn)行梯度合成與閾值判斷。梯度合成使用浮點(diǎn)運(yùn)算單元中的開方運(yùn)算器實(shí)現(xiàn)。最后,邊緣檢測仿真結(jié)果如圖16 所示,1表示邊緣信息,0 表示非邊緣信息。第一行為系統(tǒng)時(shí)鐘,每個(gè)時(shí)鐘周期對(duì)應(yīng)一個(gè)像素信息,從圖片左上角至右下角,自左向右,自上向下遍歷,第二行表示每個(gè)像素點(diǎn)是否為邊緣信息。
圖16 邊緣檢測結(jié)果仿真
通過對(duì)系統(tǒng)整體結(jié)構(gòu)的分析,設(shè)計(jì)了實(shí)驗(yàn)平臺(tái),編寫verilog HDL 程序完成了ROM、RAM 存儲(chǔ)讀取,圖像放大,圖像灰度化,直方圖均衡化,Sobel 邊緣檢測模塊的實(shí)現(xiàn)。最后驅(qū)動(dòng)VGA 顯示屏顯示結(jié)果。圖17 為未經(jīng)直方圖均衡化的邊緣檢測結(jié)果。圖18(a)為輸入的原始低亮度圖片,圖18(b)為直方圖均衡化后的灰度圖,圖18(c)為經(jīng)過直方圖均衡化與高斯濾波的圖片,圖18(d)為最終的邊緣檢測結(jié)果。
荸薺:購置于湖北省武漢市洪山區(qū)南湖大道菜市場。挑選大小均勻、無明顯機(jī)械傷、無病蟲害、成熟度一致的荸薺作為試驗(yàn)材料。
圖17 直接邊緣檢測結(jié)果
圖18 系統(tǒng)圖像處理結(jié)果
可以從圖17 與圖18 的對(duì)比結(jié)果中可以看出,未經(jīng)直方圖均衡化增強(qiáng)而直接進(jìn)行邊緣檢測,由于圖片整體灰度值普遍低于閾值并且對(duì)比度低,細(xì)節(jié)信息非常少,難以識(shí)別出圖片邊緣。而經(jīng)過直方圖均衡化,圖片對(duì)比度提升,圖片可辨識(shí)度大大提高,系統(tǒng)可以較為準(zhǔn)確地識(shí)別出邊緣信息。
本文針對(duì)圖像邊緣檢測算法,關(guān)注于外界光線條件不足對(duì)算法結(jié)果的影響,設(shè)計(jì)了一款綜合直方圖均衡化圖像增強(qiáng),圖像高斯濾波,8 方向Sobel 邊緣檢測的FPGA 圖像處理系統(tǒng)。該系統(tǒng)相較于傳統(tǒng)算法,能有效解決欠光環(huán)境下邊緣檢測可行性低的問題,大幅提升了算法對(duì)光照條件的魯棒性,同時(shí)以FPGA 作為系統(tǒng)主控,提升了算法效率。結(jié)合了圖片全局灰度均值作為閾值初值的方法,大大減少了在FPGA 平臺(tái)搭建邊緣檢測算法的參數(shù)調(diào)整時(shí)間。后續(xù)可結(jié)合SDRAM 外設(shè)進(jìn)行原始圖片的存儲(chǔ)讀取以解決ROM 存儲(chǔ)空間有限的問題,使原始圖片具備更高的分辨率。