劉 燕,陳興文,李 敏
(大連民族學(xué)院信息與通信工程學(xué)院,遼寧大連116605)
隨著計(jì)算機(jī)及通信技術(shù)的發(fā)展,圖像和視頻的應(yīng)用愈加廣泛。大部分圖像數(shù)據(jù)在實(shí)際應(yīng)用前皆需進(jìn)行有針對(duì)性的處理,如根據(jù)圖像數(shù)據(jù)特點(diǎn)和應(yīng)用領(lǐng)域?qū)D像進(jìn)行增強(qiáng)、除噪、銳化和識(shí)別等。此外,為了有效實(shí)時(shí)地傳輸信息,還必須對(duì)圖像進(jìn)行壓縮。圖像處理技術(shù)尤其是實(shí)時(shí)處理,現(xiàn)已成為一個(gè)熱門的研究方向。本研究旨在設(shè)計(jì)基于DSP的實(shí)時(shí)圖像處理系統(tǒng)。在DSP的控制下,不借助任何微機(jī)系統(tǒng)即可實(shí)現(xiàn)對(duì)圖像的采集、轉(zhuǎn)換、處理以及顯示等相關(guān)工作,即做到了“嵌入式”。具有體積小、成本低、工作可靠等優(yōu)點(diǎn)。能根據(jù)對(duì)圖像處理的不同要求,通過軟件編程來完成相關(guān)的圖像處理工作。
該數(shù)字圖像處理系統(tǒng)主要由圖像信號(hào)處理和圖像視頻采集顯示兩大模塊構(gòu)成,具體包括視頻信號(hào)采集、邏輯控制、幀緩存、圖像處理、圖像數(shù)據(jù)傳送及圖像顯示6部分[1-2]。硬件結(jié)構(gòu)框圖如圖1。
視頻信號(hào)的采集部分主要由CCD圖像傳感器及視頻采集與解碼功能于一體的SAA7111AHZ組成,邏輯控制部分由CPLD完成,圖像處理部分以DSP為核心,圖像傳送部分主要通過EDMA通道使圖像數(shù)據(jù)在DSP及緩存RAM間傳送,圖像顯示部分將處理后的圖像數(shù)據(jù)經(jīng)過AL250芯片D/A轉(zhuǎn)換后輸出標(biāo)準(zhǔn)的VGA信號(hào),在一般的顯示器上即可顯示。
圖1 基于DSP的數(shù)字圖像處理平臺(tái)硬件結(jié)構(gòu)圖
該模塊以TMS320C6416GLZ為核心,利用片內(nèi)集成外設(shè)EDMA通道對(duì)圖像視頻采集顯示模塊采集到的輸入RAM中的數(shù)據(jù)搬移到圖像信號(hào)處理模塊DSP片內(nèi)RAM中,進(jìn)行算法處理,然后將處理后的數(shù)據(jù)送回視頻采集顯示模塊,經(jīng)過AL250 D/A轉(zhuǎn)換后輸出標(biāo)準(zhǔn)的VGA信號(hào)顯示。為了提高程序執(zhí)行效率,必須將程序要用到的數(shù)據(jù)先由片外存儲(chǔ)器調(diào)到片內(nèi)數(shù)據(jù)RAM,利用EDMA與CPU并行工作的特點(diǎn),采用PING-PONG技術(shù),可作到如同數(shù)據(jù)總在片內(nèi)數(shù)據(jù)RAM被處理,以提高運(yùn)行速度[3-4]。
使用PING、PONG兩個(gè)存儲(chǔ)區(qū),PING存儲(chǔ)區(qū)主要進(jìn)行算法處理,因此該區(qū)設(shè)在高速的片內(nèi)數(shù)據(jù)RAM中,PONG存儲(chǔ)區(qū)選用片外SDRAM,主要任務(wù)是緩存處理后的數(shù)據(jù)并將其傳輸?shù)捷敵鯮AM。從輸入RAM接收到的數(shù)據(jù)通過EDMA通道0傳輸?shù)絇ING中,在此完成算法處理,然后將處理后的數(shù)據(jù)緩存到PONG中,與此同時(shí)EDMA通道1將PONG中的上次結(jié)果送到輸出RAM。這樣使得對(duì)數(shù)據(jù)處理的同時(shí)傳輸處理后的數(shù)據(jù)送顯示。
(1)外部存儲(chǔ)器擴(kuò)展。EMIF是外部存儲(chǔ)器和C6416片內(nèi)其他單元的接口,CPU訪問片外存儲(chǔ)器時(shí)必須通過EMIF,EMIF具有很強(qiáng)的接口能力,C6416的EMIFA支持8/16/32/64bit的數(shù)據(jù)訪問,EMIFB支持8/16bit的數(shù)據(jù)訪問。本系統(tǒng)利用EMIFA擴(kuò)展兩片SDRAM(Micron公司的MT48LC2M32B2TG),擴(kuò)展后的存儲(chǔ)容量為128Mbit,數(shù)據(jù)線64位寬。
(2)擴(kuò)展的直接存儲(chǔ)器訪問(EDMA)。本系統(tǒng)充分利用了C6416中EDMA的優(yōu)勢(shì),利用 EDMA實(shí)現(xiàn)片內(nèi)存儲(chǔ)器、片內(nèi)外設(shè),以及外部存儲(chǔ)空間之間的數(shù)據(jù)搬移,完成整個(gè)系統(tǒng)的數(shù)據(jù)傳輸。由于EDMA可以進(jìn)行獨(dú)立操作,因而整個(gè)采樣和輸出過程基本不影響DSP的數(shù)據(jù)運(yùn)算。在本系統(tǒng)中一幀圖像需要占用512KB的存儲(chǔ)空間,每幀圖像分8場(chǎng)傳輸,每傳輸一場(chǎng)圖像數(shù)據(jù)為64KB。在使用EDMA通道傳輸時(shí),一場(chǎng)圖像設(shè)置16K個(gè)數(shù)據(jù)單元,每個(gè)數(shù)據(jù)單元為32bit,在場(chǎng)同步信號(hào)的控制下,啟動(dòng)數(shù)據(jù)的傳輸。
視頻采集顯示模塊集成了系統(tǒng)中采集、邏輯控制及圖像顯示三部分。該部分主要包括Philips公司的 SAA7111AHZ芯片,Averlogic公司的AL250芯片,并載有兩片128KB(16bit寬)的雙口RAM作為幀存儲(chǔ)和一片用于控制時(shí)序和地址產(chǎn)生的CPLD,視頻采集硬件結(jié)構(gòu)如圖2。
SAA7111AHZ芯片進(jìn)行視頻采集得到16bit的標(biāo)準(zhǔn)復(fù)合彩色數(shù)字信號(hào),寫入輸入RAM中進(jìn)行緩存,當(dāng)采集完畢后,產(chǎn)生中斷給DSP,通知DSP可以開始對(duì)圖像進(jìn)行處理了,此時(shí),DSP讀取當(dāng)前場(chǎng)采集得到的圖像數(shù)據(jù),和前一場(chǎng)中采集得到的圖像數(shù)據(jù)進(jìn)行算法處理。處理后的數(shù)據(jù)寫入輸出RAM,經(jīng)AL250芯片D/A轉(zhuǎn)換后輸出標(biāo)準(zhǔn)的VGA信號(hào)。由于SAA7111AHZ與AL250都是由IIC總線控制的,因此采用一單片機(jī)來控制IIC總線。
圖2 視頻采集硬件結(jié)構(gòu)圖
系統(tǒng)軟件采用模塊化設(shè)計(jì),分為系統(tǒng)初始化、圖像數(shù)據(jù)傳輸以及圖像處理3大部分。在系統(tǒng)完成了上電啟動(dòng)或復(fù)位后,DSP程序加載與啟動(dòng),并完成系統(tǒng)的初始化以及各個(gè)參數(shù)的設(shè)置,即系統(tǒng)自舉,隨后開始等待外部中斷,當(dāng)觸發(fā)搬移圖象數(shù)據(jù)的外部中斷INT4產(chǎn)生后,DSP啟動(dòng)SAA7111AHZ中采集到的數(shù)據(jù)自雙口RAM搬移至內(nèi)部RAM,數(shù)據(jù)傳輸完畢,隨即產(chǎn)生EDMA中斷,進(jìn)入中斷服務(wù)程序,對(duì)采集到的數(shù)據(jù)進(jìn)行處理并送入雙口RAM,經(jīng)過AL250芯片D/A轉(zhuǎn)換后輸出標(biāo)準(zhǔn)的VGA信號(hào)便可以在一般的顯示器上顯示處理后的圖象。具體的系統(tǒng)軟件流程如圖3。
圖3 系統(tǒng)軟件流程圖
為了測(cè)試系統(tǒng)的功能,采用了經(jīng)典的邊緣提取算法驗(yàn)證。首先在系統(tǒng)硬件平臺(tái)上采集到的待處理的原始圖像如圖4(a)。經(jīng)典的邊緣提取算子主要按照模板實(shí)現(xiàn),由于模板不允許移出邊界,因此對(duì)邊界上無法進(jìn)行操作的象素,復(fù)制其臨近邊緣的灰度值,例如在Sobel算子(33模板)中對(duì)邊界象素進(jìn)行如下處理:
void sobelfilter(Uint16* inputbuffer16,Uint16* outputbuffer16,int cols,int rows)
{
……
for(i=0;i<cols;i++)
*((Uint16*)outputbuffer16+i)=*((Uint16*)outputbuffer16+cols+i);
for(i=cols*rows-cols;i<cols*rows;i++)
*((Uint16*)outputbuffer16+i)=*((Uint16*)outputbuffer16-cols+i);}
對(duì)圖4(a)原始圖像進(jìn)行不同的邊緣提取算子處理后的圖像分別如圖4(b)、4(c)、4(d)。
圖4 原始圖像與處理后的圖像
從處理后的圖中可以直觀的看出,Roberts算子邊緣定位較高,Soble算子的邊緣圖中提取出的邊緣數(shù)欠完整且受噪聲干擾較大。LoG算子的邊緣圖中的邊緣連續(xù)性很好,完整性也較優(yōu),但是LoG算子邊緣較粗,主要因?yàn)樵谶^濾噪聲的同時(shí)將邊緣平滑了,所以使得邊緣相對(duì)較粗。
本系統(tǒng)以TMS320C6416為核心構(gòu)建了實(shí)時(shí)圖像處理平臺(tái),并在所構(gòu)建的圖像處理平臺(tái)上完成了邊緣檢測(cè)算法,實(shí)現(xiàn)了不借助微機(jī)任何資源即可完成對(duì)圖像的采集、轉(zhuǎn)換、處理以及顯示等相關(guān)工作,大大降低了系統(tǒng)的成本,提高了工作的可靠性,具有較高的應(yīng)用價(jià)值。
[1]許爽,索繼東,趙繼印.自動(dòng)找點(diǎn)的掌紋圖像定位分割方法[J].計(jì)算機(jī)工程與設(shè)計(jì),2011(9):3102-3105.
[2]姜明新,王洪玉,蔡興洋.基于碼本模型和多特征的早期煙霧檢測(cè)[J].中國圖象圖形學(xué)報(bào),2012(9):1102-1108.
[3]張俊星,石立新,王都生.閾值自適應(yīng)語音自動(dòng)分割系統(tǒng)模型[J].計(jì)算機(jī)工程與設(shè)計(jì),2010(8):1886-1889.
[4]肖瑛,馮長建.組合窗函數(shù)的短時(shí)傅里葉變換時(shí)頻表示方法[J].探測(cè)與控制學(xué)報(bào),2010(3):43-47.