通用工業(yè)視頻圖像疊加的設計與實(shí)現
圖像處理技術(shù)廣泛應用于科學(xué)研究、工農業(yè)生產(chǎn)、軍事技術(shù)、醫療衛生等領(lǐng)域。在工業(yè)上的應用主要有:機器人視覺(jué)的研制、生產(chǎn)過(guò)程自動(dòng)化、產(chǎn)品質(zhì)量檢測、機器零件的無(wú)損探傷、人工地震信號處理及地層內部結構的重建等等。本文介紹的項目是為實(shí)現生產(chǎn)過(guò)程自動(dòng)化,疊加工業(yè)現場(chǎng)視頻圖像中多種起標識作用的圖形,簡(jiǎn)化以后的數字化處理過(guò)程;并且可以通過(guò)人機交互,由用戶(hù)通過(guò)按鍵選擇所要疊加的圖形。目前市場(chǎng)上有能完成其中部分功能的芯片,但是它們價(jià)格太高;而且,這些芯片應用面窄,可擴充性差,不能滿(mǎn)足客戶(hù)的特殊要求。本文作者設計并實(shí)現了一種成本低、應用靈活可靠,易于擴充、實(shí)用性強的圖像疊加方案。
?。?圖像疊加的原理及總體設計
經(jīng)過(guò)上述分析和市場(chǎng)調查,選用Intel的單片機90C32(它與8032的引腳和功能完全一致)作為CPU,可以充分發(fā)揮它的靈活性,并且利用其成熟的典型擴展電路來(lái)減少開(kāi)發(fā)的難度和成本。在設計中,同步信號的提取、疊加選擇的控制、屏幕編輯緩沖區的讀寫(xiě)控制,以及鍵盤(pán)譯碼均用硬件實(shí)現,使系統快速、穩定、可靠運行。為減少時(shí)延,擴展電路全部采用高速CMOS芯片實(shí)現。在此功能較完善的硬件基礎上,軟件設計簡(jiǎn)單多了,主要完成系統初始化的按鍵響應。
?。?硬件設計
硬件設計的總體框圖如圖3所示。
下面分別詳細介紹各個(gè)主要部分的電路。
2.1 同步信號的提取及行/場(chǎng)計數器電路
準確提取視頻信號中的同步信號對于本項目的成攻至關(guān)重要,幸運的是市場(chǎng)上提供了LM1881芯片,它僅需幾個(gè)外接元件,就可以可靠地提取出視頻信號中的同步信號。LM1881的引腳及連接電路如圖4所示,圖中的電容值均為0.1μF,電阻阻值為680KΩ。
行/場(chǎng)計數器由193芯片級聯(lián)而成。按PAL制式規定,場(chǎng)掃描頻率為50Hz,幀頻25Hz,總掃描線(xiàn)數625,由于分為奇偶場(chǎng)掃描,每場(chǎng)有312行,需用二進(jìn)制地址9位。選擇4MHz的晶振行為行計數器的計數脈沖輸入,那么每行有256個(gè)像素點(diǎn),計算公式為:每片193有四位輸入、輸出端,輸入端均接“0”,輸出端組成地址總線(xiàn)。為保持行、場(chǎng)計數器電路的整齊,并保留一定的擴充性,行、場(chǎng)計數器各設3片193芯片實(shí)現。計數器電路如圖5所示。
行同步信號經(jīng)過(guò)一級非門(mén),送往行計數器三片193的清零端MR;同時(shí)作為場(chǎng)計數器的計數脈沖,送往場(chǎng)計數器最低級193的計數脈沖輸入端CU;而行計數器各級之間的級聯(lián)由低級193芯片的TCU端送往更高一級193芯片的CU端;圖中未畫(huà)出的行計數器的計數脈沖輸入端CU由晶振信號送入。場(chǎng)同步信號經(jīng)過(guò)一級非門(mén),送往場(chǎng)計數器三片193的清零端MR;場(chǎng)計數器各芯片之間的級聯(lián)方式同行計數器相同。計數器產(chǎn)生的18位地址,經(jīng)過(guò)總線(xiàn)鎖存器,高15位送往屏幕編程緩沖區RAM,最低3位送往疊加控制的并串轉換電路。
2.2 圖像疊加及控制電路
MAX442的引腳圖與連接電路如圖6所示,圖中的電容容值單位為μF,電阻單位為Ω。INO,IN1為兩路視頻信號的輸入端,分別外接現場(chǎng)視頻信號和黑電平;地址線(xiàn)AO控制“二選一”開(kāi)關(guān),選擇輸出哪個(gè)通道的信號。AO在屏幕編輯緩沖區中僅占一位空間,所以疊加控制字可以按位讀寫(xiě)修改,這大大減少了所需的屏幕編輯緩沖區RAM的存儲空間。在RAM中數據是按照字節存取的,因此在輸出時(shí),需要把從RAM中讀出的數據進(jìn)行并串轉換,送到MAX442的AO端。這種“八選一”的數字邏輯電路用可編程芯片GAL可以很方便地實(shí)現,成本也不高,因此我們選擇用GAL實(shí)現,邏輯表達式從略。
2.3 屏幕編輯緩沖區的控制設計
屏幕編輯緩沖區選擇用RAM,是因為用戶(hù)要求疊加的均是規則的幾何圖形,由CPU 90C32動(dòng)態(tài)計算圖形各點(diǎn)的位置算法非常簡(jiǎn)單;用戶(hù)完全可以接受。
CPU 90C32的典型擴展電路包括程序存儲區的擴展、數據存儲區的擴展、時(shí)鐘電路和晶振電路的擴展??紤]到項目需求并保留一定的擴充余地,存儲器ROM選用27256芯片,RAM選用61256芯片。其中除RAM(屏幕編輯緩沖區)為臨界區,需要特殊設計以外,其它電路與通用的單片機擴展電路完全相同,在此不另做介紹。
2.4 按鍵譯碼電路
本項目中,用戶(hù)在人機交互選擇疊加光標的形狀與大小時(shí),僅需要四個(gè)按鍵,因此不必使用功能強大的8279芯片,直接擴展90C32即可。四個(gè)按鍵經(jīng)過(guò)譯碼,送到90C32的P1端口,這個(gè)譯碼邏輯非常簡(jiǎn)單,同樣用GAL實(shí)現,邏輯表達式從略。在實(shí)際使用中,用戶(hù)選擇一次光標的大小與形狀之后,總會(huì )穩定一段時(shí)間去進(jìn)行其主要工作,所以操作按鍵的時(shí)間對于整個(gè)系統的工作時(shí)間而言是很短的。CPU對按鍵的響應采用中斷方式,這可以比輪詢(xún)方式大大減少對CPU處理器資源的占用。在按鍵電路中,一共占用P1端口2根I/O線(xiàn),AO、A1是譯碼后的按鍵地址(或代碼);另有INT是檢測是否有按鍵被按下的中斷信號線(xiàn),它與90C32的外接中斷輸入端相連接。通常INT為高電平,若有按鍵被按下,INT為低電平,CPU可響應中斷。
?。?軟件實(shí)現
由于本項目中的難點(diǎn)工作均用硬件實(shí)現,所以大大減少了軟件設計工作量。軟件主要實(shí)現系統初始化和中斷處理過(guò)程,其流程圖如圖7所示。
主要過(guò)程的設計思想如下所述。
3.1 系統初始化
初始化參數,如代表光標大小的RDS、代表光標形狀的SHAPE等等;
初始化監視器的屏幕:清零屏幕編輯緩沖區、疊加十字光標和圓形光標;
開(kāi)中斷,使CPU處于可接收外部中斷信號的狀態(tài)。
3.2 中斷處理過(guò)程
首先打開(kāi)在CPU響應中斷時(shí)關(guān)閉的中斷,然后調用按鍵去抖過(guò)程,確認有合法按鍵輸入后取出按鍵代碼,刷新屏幕編輯緩沖區,并調用按鍵響應過(guò)程。
3.3 按鍵響應過(guò)程
四個(gè)子程序分別對應于四個(gè)按鍵的功能:
KEY0:將現在屏幕上的光標尺寸放大一個(gè)單位;
KEY1:將現在屏幕上的光標尺寸縮小一個(gè)單位;
KEY2:改變現在屏幕上的光標形狀,依次重復按此鍵,光標的形狀依次變?yōu)閳A形、方形、六邊形;
KEY3:同時(shí)疊加所有不同大小的圓形光標,這是考慮到在實(shí)際應用中,圓形光標的使用頻率較其它形狀更高而特設的。
3.4 按鍵去抖過(guò)程
在檢測到有且僅有一個(gè)鍵被按下時(shí),記錄此時(shí)閉合的按鍵的代碼,然后執行一個(gè)延時(shí)過(guò)程,如延時(shí)10ms;之后,再判斷是否仍有按鍵閉合。若有,檢測它的代碼與方才記錄的代碼是否一致,只有二者一致時(shí),才認為確實(shí)有按鍵閉合,進(jìn)行按鍵響應處理。
?。ǎ保┤粢筮M(jìn)一步提高圖像疊加的精確度,可選擇更高頻的晶振作為行計數器的輸入脈沖,必要時(shí)對行計數器電路加以擴展;同時(shí)在軟件的地址處理上略加改動(dòng)即可。這相當于將像素點(diǎn)細化,因而疊加后的圖像清晰度更高。
?。ǎ玻┤粢髮ΟB加的圖形加以擴充或改動(dòng),可對相應的軟件“按鍵處理過(guò)程”做調整。若需要增加按鍵的數目,還要對硬件中的按鍵譯碼電路進(jìn)行擴展。由于在硬件設計中已考慮到未來(lái)的擴展,目前的設計僅需作很少改動(dòng),并且可最大限度地減少占用CPU90C32的端口線(xiàn)。如4個(gè)按鍵需要3根I/O線(xiàn),即2線(xiàn)地址線(xiàn),1根中斷檢測線(xiàn);若擴展為8個(gè)按鍵,只需增加1根地址線(xiàn),并重寫(xiě)譯碼GAL的邏輯即可。以此類(lèi)推,若擴展N個(gè)按鍵,需要n根I/O線(xiàn),其中,
n=[logN]+1+1
但是,由于GAL芯片本身結構的限制,建議在按鍵超過(guò)8個(gè)時(shí),選用8279擴展鍵盤(pán),以更好地滿(mǎn)足用戶(hù)要求。
?。ǎ常┤粢竽墀B加更多類(lèi)的信號,如增加要求“可選擇疊加黑電平或白電平”,可對硬件設計的疊加電路及其控制部分加以修改。MAXIM公司提供的芯片MAX441是4信道視頻多路開(kāi)關(guān),MAX440是8信道視頻多路開(kāi)關(guān),它們的單位增益帶寬更高,其他主要參數與MAX442基本一致。詳細介紹請查閱《MAXIM DATABOOK1998》。
?。ǎ矗┤粢獙σ曨l信號進(jìn)行其它加工、處理,也可由本文所述的原理與實(shí)現得到參考和啟發(fā)。
評論