桑曉丹 郭銳
(1.周口師范學院 河南省周口市 466001 2.河南科技職業(yè)大學 河南省周口市 466000)
對于剛接觸與學習計算機的初學者來說,《數(shù)字圖像處理》是一門入門的基礎課程。對于老師來說,講解這門課程的主要難點就是僅能憑借教材來向學生講解有關數(shù)字圖像處理技術的理論知識與基本原理。因為數(shù)字圖像處理內容偏于抽象化,學生在學習數(shù)字圖像處理技術過程中,如果教材是唯一的學習途徑,從某種角度來說,這樣是不利于學生對教材內容的深入理解與掌握。為有效解決以上問題,本文提出了一種基于PyQt5 的數(shù)字圖像處理實驗平臺設計,在學生學習數(shù)字圖像處理相關知識過程中,該實驗平臺相當于是一種輔助學習工具,操作并不復雜,能夠促使學生可以對數(shù)字圖像處理的相關經(jīng)典算法、基本原理進行有效掌握與深度理解。針對基于PyQt5 的數(shù)字圖像處理實驗平臺,共包括4 個功能模塊,分別為狀態(tài)欄、工作區(qū)、工具欄、菜單欄,其中頁面提示內容是通過狀態(tài)欄予以顯示的,顯示是通過工作區(qū)實現(xiàn)的,快捷操作、細節(jié)操作、文字內容、圖像等放置在工具欄中,一些重要操作放置在菜單欄中。該實驗平臺具有移植性、交互性、實用性等特點?;诖?,本文就基于PyQt5 的數(shù)字圖像處理實驗平臺設計展開了探討,以供大家參考。
所謂數(shù)字圖像處理,就是指通過運用計算機來對數(shù)字圖像進行處理。在1920年,數(shù)字圖像處理首次被人們提出來,在當時第一張數(shù)字照片就是通過選用數(shù)字壓縮技術進行成功傳輸?shù)?。在后期發(fā)展過程中,因技術水平有限,數(shù)字圖像處理技術的發(fā)展速度并不是非??臁T?960年,人們研發(fā)出了首臺計算機,可以進行數(shù)字圖像處理。在1964年,美國航天研究所通過利用數(shù)字圖像處理技術,成功傳回了航天探測器在月球上采集到的照片,照片的清晰度非常高,能夠清晰看到月球的表面,通過這次實踐活動,有效推動了數(shù)字圖像處理技術的進一步快速發(fā)展,同時出現(xiàn)了數(shù)字圖像處理這門學科。從1960年-1970年期間,隨著離散數(shù)學的出現(xiàn)與不斷優(yōu)化,有效推動了數(shù)字圖像處理技術的進一步快速發(fā)展。在這段時間中,特別是在醫(yī)學領域中,數(shù)字圖像處理技術發(fā)揮出極大的作用。在1975年,出現(xiàn)了CT 設備,有效提高了醫(yī)學技術水平。在1980年,隨著計算機技術水平的不斷提高,針對圖像,人們對其的研究范圍也隨之變大,即從二維領域逐漸擴大到三維領域。隨著圖像處理方法與理論的不斷快速發(fā)展,有效提高了數(shù)字圖像處理技術的水平。在1980年,專家們首次提出了視覺計算理論,在后期發(fā)展中,該理論在計算機視覺領域發(fā)展中起到非常重要的主動作用。自1990年以后,數(shù)字圖像處理技術的發(fā)展變得越來越智能化、低成本、實時性與網(wǎng)絡化。
1.2.1 圖像分割
所謂圖像分割,就是指將圖像劃分為特定的區(qū)域,然后提取出目標的一種技術。目前,圖像分割法可以劃分為四種不同的類型,分別為圖像運動目標分割、基于邊緣的分割、基于區(qū)域的分割、基于I 值的分割。在最近幾年中,在圖像分割中,專家們引用了很多其他學科的新方法與新理論,進而衍生出很多新的分割方法。
1.2.2 圖像分析
在圖像處理中,圖像分析屬于高級階段。圖像分析,就是指通過運用計算機來對圖像進行深入分析,能夠獲取對圖像進行描述的符號或者數(shù)值。例如,在處理醫(yī)學圖像過程中,除了要對異變的存在進行檢測以外,還需要對異變的尺寸大小進行嚴格檢查。通過紋理分析、圖像描繪這兩個方面均可以進行圖像分析。紋理分析,包括模型法、頻譜法、統(tǒng)計法、結構法等;圖像描繪,包括關系描述、區(qū)域邊界描述、區(qū)域內部描述等。在以前進行圖像分析過程中,基本上為二維的圖像處理,但是隨著科學技術水平的不斷提高,圖像分析逐漸從二維逐漸發(fā)展到三維圖像處理。
1.2.3 圖像數(shù)字化
所謂圖像數(shù)字化,就是指針對利用傳感器得到的連續(xù)性圖像數(shù)據(jù),將其轉變?yōu)殡x散性的數(shù)字形式,同時仍然與原圖像保持一致,且方便進行計算機處理的一種技術。在圖像數(shù)字化中,量化與取樣是兩個不同的環(huán)節(jié)。針對像素幅值,對其進行數(shù)字化處理,即為量化;針對像素坐標,對其進行數(shù)字化處理即為取樣。數(shù)字圖像的質量主要取決于量化運用的灰度級數(shù)與取樣樣本數(shù)。
1.2.4 圖像壓縮
所謂圖像壓縮,就是指通過運用組合、變換的編碼方法來簡化處理數(shù)據(jù)源,通過利用更少的代碼來對更多信息進行表示的一種技術。人的視覺心理特點、數(shù)字圖像的相關性,即為圖像壓縮的基本原理。其中,圖像壓縮系統(tǒng)是由兩個部分構成的,即解碼器與編碼器。數(shù)據(jù)在經(jīng)過解碼以后,如果依然與原數(shù)據(jù)保持一致,此時壓縮系統(tǒng)即可叫做信息保持或者無損的壓縮系統(tǒng),如果未保持一致,則叫做有損的壓縮系統(tǒng)。壓縮編碼技術大致可以劃分為兩個不同的階段,即,第一階段為傳統(tǒng)數(shù)據(jù)壓縮理論,第二階段的壓縮編碼技術,可以有效解決第一代中的不足與問題,能夠有效提高圖像復原質量。
1.2.5 圖像復原與加強
所謂圖像復原,就是指對已經(jīng)退化的圖像進行恢復,使其變?yōu)楹瓦^去相同模樣的一種技術。圖像復原,包括幾何校正、頻域復原、代數(shù)復原等。所謂圖像加強,就是指為方便進一步處理、分析、觀察、顯示圖像,尖銳化或者強調圖像對比度、輪廓、邊緣等特征的一種技術。與圖像復原相比,圖像加強具有很多不同之處,圖像加強并不會對圖像退化原因進行深入考慮,僅僅是為了對圖像中的信息進行強調突出。圖像加強,包括在頻率域的加強、在空間域的加強。偽彩色加強、圖像銳化、圖像平滑、直方圖修正等均為比較常見的圖像加強方法。
《數(shù)字圖像處理》課程理論是基于PyQt5 的數(shù)字圖像處理實驗平臺的設計基礎。在該實驗平臺系統(tǒng)中,一共包含邊緣分割與檢測、圖像改善、圖像濾波、圖像變換、圖像優(yōu)化、案例實踐這幾個模塊,進而能夠充分展現(xiàn)出教材中復雜的理論知識。
在數(shù)字圖像處理實驗平臺中,一共包括五個不同模塊的實踐教學內容,GUI 主界面是由Qt Designer、PyQt5 構建的,在GUI主界面中設有一個主窗口,與此同時,在主窗口中還設有多個不同的部件,包括狀態(tài)欄、工作區(qū)、工具欄、菜單欄等,而在工作區(qū)中,為能夠對圖片信息進行充分展現(xiàn),設置了QLabel 控件與QGraphicsView 空間。當在窗口界面構建并保存至文件夾以后,會出現(xiàn)一個.ui的文件,通過選用pyui5,有效轉化.ui文件,使其變?yōu)?pY文件。然后在命令行中通過對相關指令進行編輯與運行以后,便會出現(xiàn)一個.pY 的文件,通過打包.pY 文件,會形成.exe 文件,計算機用戶在對.exe 程序進行雙擊以后,便可以對該文件進行有效執(zhí)行,最后便能夠進入到實驗平臺的主界面中來進行有關操作。
通過從邊緣分割與檢測、圖像改善、圖像濾波、圖像變換、圖像優(yōu)化、案例實踐這幾個模塊來設計數(shù)字圖像處理實驗平臺的功能。所有模塊均能夠將圖像處理過程與處理結果詳細展現(xiàn)給學生,而學生通過利用其中一個模塊的功能便可以進入對應的子界面中,然后可以進行一些操作。通過選用這種方式,可以促使學生對圖像處理原理與內容具有更為深入的理解。通過利用該數(shù)字圖像數(shù)量實驗平臺,老師在對數(shù)字圖像處理的基本原理與理論基礎知識進行講解過程中,能夠通過進行實踐操作,將算法處理結果更加直觀的講解給學生聽講,有助于教學質量與教學效果的提高。
2.2.1 圖像優(yōu)化
圖像復原,就是對受損的圖像進行最大程度的恢復,使其盡可能變成最初的模樣;圖像加強,就是指弱化處理圖像中不感興趣的區(qū)域,以對目標區(qū)域加以突出,對圖像質量進行優(yōu)化與提高。在進行圖像復原過程中,因為存在多種未知因素,所以存在許多未知性。在該設計中,主要通過利用inpaint()函數(shù)來進行圖像的復原。
2.2.2 圖像變換
所謂圖像變換,就是指圖像從一個狀態(tài)變?yōu)榱硗庖粋€狀態(tài)的過程。圖像變換,包括圖像縮放、圖像鏡像、圖像旋轉等。在對數(shù)據(jù)集進行測試、編輯、加強過程中,可以利用圖像變換,能夠有效提高圖像處理結果的精準率。
(1)圖像縮放,即通過對圖像的尺寸大小進行改變,以提高圖像像素,滿足用戶的使用要求。在放大圖像過程中,能夠有效提高圖像像素的識別度;在縮小圖像過程中,能夠有效提高圖像的清晰度與平滑度。
(2)水平鏡像,就是指將目標圖像的垂直中軸線選作為中心線,調換圖像左側的圖像與右側的圖像,以獲取一張新的圖像,而垂直鏡像,就是指將目標圖像的水平中軸線選作為中心線,調換圖像上側的圖像與下側的圖像,以獲取一張新的圖像,通過調用transpose( )函數(shù),便能夠對圖像進行鏡像處理;
(3)圖像旋轉,即選取圖像中的某一點作為中心進行一定角度的旋轉,以獲取一張新的圖像,通過調用flip()函數(shù),能夠對圖像進行旋轉處理。
2.2.3 圖像濾波
所謂圖像濾波,就是指在對目標圖像細節(jié)特點予以保留的前提條件下,有效處理其中存在的噪聲的一種方法。圖像濾波,包括高斯濾波、中值濾波、均值濾波等。
(1)高斯濾波,就是指對圖像中全部點的像素值進行求解,然后進行加權平均計算,最后調用GaussianBlur( )函數(shù),便能夠獲取高斯濾波。
(2)中值濾波,就是指對圖像中全部像素領域中像素的中值進行求解,然后利用計算的中值取代圖像中全部像素的值,通過調用medianBlur( )函數(shù),便能夠實現(xiàn)中值濾波。
(3)均值濾波,就是指選中某一個目標像素,對目標像素鄰近像素的平均值進行計算,然后利用計算出的平均值來取代目標像素的值,通過調用blur ()函數(shù)能夠實現(xiàn)均值濾波。
2.2.4 圖像分割與邊緣檢測
圖像分割,包括交互式圖像分割與自動圖像分割。
(1)交互式圖像分割,就是指將用戶交互信息加入到圖像中,促使計算機能夠對目標圖像進行更好的分割。在本次設計的實驗平臺中,主要選用基于深度學習的交互式圖像分割方法,通過將極值點特點融入其中,可以在神經(jīng)網(wǎng)絡中輸入極值點特點與RGB 圖像,通過利用神經(jīng)網(wǎng)絡進行池化操作、卷積操作,能夠將目標圖像的特點提取出來,并通過輸出層將其輸出出去。
(2)自動圖像分割,就是指將算法輸入到計算機中,根據(jù)算法,計算機可以將滿足約束條件的目標區(qū)域分割出來。邊緣檢測,就是指運用各種邊緣檢測算子來提取圖像邊緣的一種方法。利用算子可以標注圖像中連讀比較顯著的像素點,通過調用edge( )函數(shù),能夠實現(xiàn)邊緣檢測。
2.2.5 案例實踐
車輛識別,就是指運用圖像識別技術來識別車輛牌照的一種技術。通過運用圖像識別技術,能夠有效監(jiān)控車輛違章行為、自動化電子收費、車輛智能化管理,同時通過運用DSRC 技術,能夠對車輛身份進行有效識別,該實驗平臺首先對圖像數(shù)據(jù)進行讀取、濾波、二值化預處理等,然后利用算子查找圖像的輪廓,根據(jù)部分參數(shù)數(shù)據(jù),對輪廓是否為車牌輪廓進行精準查找。
綜上所述,本文通過利用Python 的圖像處理功能、數(shù)據(jù)分析功能、數(shù)值計算功能,構建了一個基于PyQt5 的圖像處理實驗平臺,該圖像處理實驗平臺是由邊緣分割與檢測、圖像改善、圖像濾波、圖像變換、圖像優(yōu)化、實例實踐這幾個模塊構成的,涉及到很多有關于數(shù)字圖像處理的知識,同時以車輛識別為例,對圖像處理實驗平臺在圖像識別中的運用進行了詳細闡述,促使圖像處理可視化變得更為方便與直觀。在現(xiàn)階段中,數(shù)字圖像處理具有多種優(yōu)勢特點,包括精確度高、適用性強、靈活性高等,在人們生活各個方面均會運用到數(shù)字圖像處理技術。本文提出了一個基于PyQt5 的圖像處理實驗平臺設計,以期對相關研究人員對數(shù)字圖像處理技術的研究起到一定的借鑒作用。