新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于雙內(nèi)存的圖形采集卡的設(shè)計(jì)

基于雙內(nèi)存的圖形采集卡的設(shè)計(jì)

作者: 時(shí)間:2006-05-07 來源:網(wǎng)絡(luò) 收藏

摘要:提出一種新的圖像采集卡的設(shè)計(jì)方案,它采用兩片存儲器交替使用,使得圖像采集和計(jì)算機(jī)讀取圖像數(shù)據(jù)可同時(shí)進(jìn)行,提高了圖像質(zhì)量。分析了一般圖像采集卡的缺陷,給出了新的圖像采集卡的設(shè)計(jì)思想和原理。

本文引用地址:http://butianyuan.cn/article/242279.htm

關(guān)鍵詞:圖象采集 上內(nèi)存 計(jì)算機(jī)

數(shù)字圖像處理技術(shù)在許多領(lǐng)域得到愈來愈廣泛的應(yīng)用。微機(jī)圖像處理系統(tǒng)以其使用靈活、性能價(jià)格比高而在醫(yī)療、氣象、工業(yè)視覺等領(lǐng)域獲得廣泛應(yīng)用。在中一般采用攝像頭得到現(xiàn)場的圖像,而現(xiàn)在攝像頭輸出的信號多為模擬信號。為了實(shí)現(xiàn)攝像頭和計(jì)算機(jī)的接口,必須采用圖像采集卡。

但是現(xiàn)在市面上的圖像采集卡往往數(shù)據(jù)采集和數(shù)據(jù)讀取不能同時(shí)進(jìn)行,這給編程和實(shí)時(shí)控制帶來很大的麻煩。本文提供的圖像卡解決了這個(gè)問題,它采用兩片存儲器,計(jì)算機(jī)讀取的內(nèi)存和圖像采集所用的內(nèi)存交替使用,使得圖像采集與計(jì)算機(jī)讀取數(shù)據(jù)可同時(shí)進(jìn)行。

本文先分析了一般圖像采集卡的缺陷,然后給出了新的圖像采集卡的原理和設(shè)計(jì)思想。由于本圖像采集卡基于全電視信號,所以有必要先來簡要地介紹黑白全電視信號。

1 全電視信號及其原理

黑白CCD攝像頭經(jīng)過光電轉(zhuǎn)換將圖像(光信號)轉(zhuǎn)變?yōu)殡娦盘枺渥罱K輸出信號就是黑白全電視信號。它主要由圖像信號(視頻信號)、復(fù)合消隱脈沖和同步脈沖組成。

電視信號其極性可分為正極性和負(fù)極圖像信號。若圖像最亮?xí)r,對應(yīng)其信號電壓的幅度最大,則該信號稱為正極性信號;反之為負(fù)極性信號。這里采用負(fù)極性信號。將圖像信號送到視頻放大器中進(jìn)行放大、處理,同時(shí)加入同步機(jī)送來的行、場同步脈沖和行、場消隱脈沖,就形成了全電視信號。

消隱脈沖主要用于消除行場掃描逆程時(shí)產(chǎn)生的回掃線,同步脈沖保證收端與發(fā)端的掃描點(diǎn)應(yīng)有一一對應(yīng)的幾何位置。

由于場同步期間沒有行同步信號,這會影響在整個(gè)掃描過程中的嚴(yán)格同步。為了解決整個(gè)問題,采取在場同步脈沖中開槽的方法用以替代同步信號。場同步前后兩倍行頻的脈沖稱為均衡脈沖。

電視標(biāo)準(zhǔn)規(guī)定,全電視信號的幅度比例是:若以峰值白電平到同步電平作為100%,則峰值白電平到消隱黑電平的值為75%,峰值白電平為0%,圖像信號介于白與黑電平之間。

信號如圖1所示,從時(shí)間上看,每秒傳送25幀圖像,每幀625行;隔行掃描時(shí)每秒50場,每場312.5行。每一行的周期為64μs其中圖像占52.2μs,行消隱占11.8μs。行同步脈沖為4.7μs,它比行消隱延遲1.3μs。每一場的周期為312.5H=20ms,其中場消隱信號占25H+1行消隱信號,即等于1600μs+11.8μs。均衡脈沖的寬度為2.35μs,周期為半行,共12個(gè)前6個(gè),后6個(gè)。場同步脈沖的寬度為2.5H的時(shí)間即160μs。場同步脈沖有6個(gè)槽脈沖,其寬度為4.7μs。

在全電視信號中,把奇數(shù)場同步信號的前沿作為一場的起點(diǎn),第1、2、3行是場同步信號,第4、5、6行是后均衡脈沖,7~22行還是場消隱信號,該場消隱信號從前場623行開始,因此,整個(gè)消隱信號是25行加一個(gè)行消隱的時(shí)間。圖像信號從23行出現(xiàn)到309.5行止,共287.5行,這就是第一場或稱奇數(shù)場。從309.5行開始又是下一場的場消隱信號及前均衡脈沖,在312.5行出現(xiàn)下一個(gè)偶數(shù)場的同步脈沖,奇數(shù)到此結(jié)束,偶數(shù)場開始。一個(gè)奇數(shù)場加上一個(gè)偶數(shù)場合在一起稱為一幀。

2 一般圖像采集卡的原理

一般圖像采集卡的結(jié)構(gòu)如圖2所示。

首先對視頻信號進(jìn)行預(yù)處理和同步分離。預(yù)處理主要是進(jìn)行放大、亮度、對比度調(diào)節(jié)、信號限幅(保護(hù)A/D)。同步分離電路主要是分離出信號中的行同步和場同步信號,供采集卡的時(shí)序電路使用。然后由高速的A/D轉(zhuǎn)換器把處理后的視頻信號轉(zhuǎn)化為數(shù)字信號,在時(shí)序電路的控制下寫入存儲器。

但這樣的采集卡有一個(gè)問題,數(shù)據(jù)采集和數(shù)據(jù)讀取不能同時(shí)進(jìn)行。不妨設(shè)奇數(shù)場掃描期間,每采樣一次就將A/D轉(zhuǎn)換的結(jié)果存入存儲器,在偶數(shù)場期間,計(jì)算機(jī)將存儲器中的數(shù)據(jù)讀入計(jì)算機(jī)。但是,由于在計(jì)算機(jī)讀存儲器時(shí),A/D轉(zhuǎn)換的結(jié)果并不能同時(shí)寫入該片存儲器,即存儲器不能同時(shí)進(jìn)行讀和寫兩種操作,所以會丟掉偶數(shù)場的信息。

3 基于雙內(nèi)存的圖像采集卡的設(shè)計(jì)

為了解決這個(gè)問題,這里用了兩片存儲器進(jìn)行交替工作。當(dāng)給其中一片存儲器寫數(shù)據(jù)時(shí),計(jì)算機(jī)讀取另一片存儲器的數(shù)據(jù),反之亦然。這種采集卡的框圖如圖3所示。下面對各部分電路進(jìn)行介紹。

(1)預(yù)處理電路:實(shí)現(xiàn)把標(biāo)準(zhǔn)的全電視信號轉(zhuǎn)化為0~5V模擬信號,并具有亮度調(diào)節(jié)、對比度調(diào)節(jié)等功能。放大器用的運(yùn)放采用寬帶運(yùn)放LM318。

(2)同步分離電路:為了將數(shù)字化后的圖像信號存入相應(yīng)的幀存儲器,必須獲得行同步信號和場同步信號。由于同步信號的幅度最大,占全電視信號幅度的76%~100%的電平范圍,可根據(jù)這一特征采用幅度分離法先將復(fù)合同步信號分離出來。又因?yàn)閳鐾矫}沖的寬度為160μs,遠(yuǎn)大于行同步脈沖的寬度4.7μs,這樣又可在已分離出的行、場復(fù)合同步信號中 進(jìn)一步分離出行同步和場同步出來。

(3)A/D轉(zhuǎn)換器:圖像采集卡中的A/D轉(zhuǎn)換器選用8bit高速視頻轉(zhuǎn)換芯片CA3318CE完成。它的最高轉(zhuǎn)換速率可達(dá)15MHz。由前面的黑白全電視信號的分析可知,每一行圖像約52.2μs,本卡在電視信號每行的行正程期間需采樣512點(diǎn),采樣時(shí)鐘約為10MHz.因此選用CA3318CE 完全符合要求,只需將其采樣率選在10MHz即可。

(4)控制電路:控制電路的核心器件是一片通用邏輯門陣列GAL20V8。該電路產(chǎn)生幀存儲器的讀信號MEMR1、MEMR2和寫信號MEMW1、MEMW2以及圖像采集卡所需的工作狀態(tài)信號PC/LOCAL和!PC/LOCAL,電路原理如圖4所示。U33是一片GAL20V8,它工作在簡單模式,管腳18~22配置成輸出,其它配置成輸入。1~6管腳接PC機(jī)的地址線PC_A4~PC_A9,7~10管腳接PC機(jī)的地址線PC_A16~PC_A19,管腳11接系統(tǒng)時(shí)鐘CLK,管腳13接PC機(jī)的PC_IOW信號,管腳14接PC/LOCAL信號,管腳15、16分別接行消隱和場消隱指示信號H_MR和V_MR,管腳17接PC機(jī)的讀存儲器信號PC_MEMR,管腳18、19輸出幀存儲器RAM1的寫信號MEMW2和讀信號MEMR2,20、21腳輸出存儲器RAM1的寫信號MEMW1和讀信號MEMR1,22腳輸出信號PC/LOCAL_CLK作為觸發(fā)器OP6B的時(shí)鐘,23腳接PC機(jī)的PC_AEN信號。

控制電路還要產(chǎn)生PC/LOCAL信號。該信號必須由PC機(jī)控制。在這里,PC/LOCAL作為PC機(jī)I/O口的最低一位,口地址是220H~22FH,PC機(jī)只需向220H~22FH任意地址寫1或0即可以將PC/LOCAL設(shè)置為1或0。I/O口地址的譯碼由U33完成,可以用ABEL語言描述如下:

IOCS=!(?。校茫撸粒矗Γ校茫撸粒担Γ。校茫撸粒叮Α牐校茫撸粒罚Γ。校茫撸粒福Γ校茫撸粒梗Γ。校茫撸粒牛危?/p>

PC/LOCAL_CLK=IOCS#PC_IOW

IOCS是端口的選通信號,低電平有效。當(dāng)PC機(jī)的地址線PC_A9~PC_A4為100010時(shí),PC_AEN為低電平PC_AEN為高電平時(shí)指示PC機(jī)處于DMA狀態(tài)時(shí),IOCS有效。PC/LOCAL_CLK由IOCS和PC機(jī)的I/O口寫地址PC_IOW相或產(chǎn)生,當(dāng)端口未選中時(shí),它一直是高電平;當(dāng)端口被選中后,由PC_IOW產(chǎn)生一個(gè)上升沿。PC/LOCAL_CLK的上升沿將觸發(fā)OP6B,將PC機(jī)的最低一位數(shù)據(jù)線PC_D0鎖存,產(chǎn)生PCLOCAL和?。校茫蹋希茫粒獭?/p>

當(dāng)幀存儲器的地址由PC機(jī)產(chǎn)生時(shí),需要譯碼邏輯。PC機(jī)低于1M的內(nèi)存空間分配如表1所示。為了不發(fā)生地址沖突,從表中可知,可以把D0000H~DFFFFH空間作為幀存儲器的映射地址。這部分譯碼工作也由U33完成,用ABEL語言描述:

表1 微機(jī)低端內(nèi)存空間分配

內(nèi)存區(qū)域內(nèi) 容
A 0000~AFFFFEGA顯示內(nèi)存
B 0000~B7FFF單色顯示內(nèi)存
B 8000~BFFFF彩色顯示內(nèi)存
C 0000~C7FFF圖形BIOS
C 8000~EFFFF
F 0000~FFFFF系統(tǒng)BIOS

MEMCS=?。ǎ校茫撸粒保梗Γ校茫撸粒保福Γ。校茫撸粒保罚Γ校茫撸粒保叮?/p>

由式子可知當(dāng)PC_A19~PC_A16為1101時(shí),MEMCS有效低電平。

幀存儲器的讀信號MEMR1、MEMR2和寫信號MEMW1、MEMW2也由控制電路產(chǎn)生。當(dāng)PC/LOCAL為0時(shí),PC機(jī)讀幀存RAM1,同時(shí)AD轉(zhuǎn)換的結(jié)果送入幀存RAM2;反之亦然。讀信號由PC機(jī)的外存儲器讀信號PC_MEMR和譯碼信號MEMCS產(chǎn)生;寫信號由系統(tǒng)時(shí)鐘CLK、行、場消隱指示信號H_MR、V_MR生成。當(dāng)H_MR或V_MR任意一個(gè)為高電平時(shí),表示現(xiàn)在處于消隱狀態(tài);只有當(dāng)H_MR和V_MR都為低電平時(shí),表示處于場正程和行正程,A/D轉(zhuǎn)換的結(jié)果才寫入幀存儲器。

(5)存儲器:為了實(shí)時(shí)采集和顯示,數(shù)字圖像采集卡中設(shè)置了存儲器。一般對圖像幀存儲器有如下要求:A 高速存取,B 存儲量大,C 非同步輸入輸出的存取。存儲一幀或一場電視信號必須的存儲容量可用下式計(jì)算:

存儲容量=1幀(或1場)的掃描線數(shù)×1行的取樣數(shù)×量化bit數(shù)

在本圖像采集卡中,一場采集的圖像為512×256點(diǎn),需要存儲容量為128K×8bit的存儲器。在前面硬件框圖中曾經(jīng)討論過,需要兩片幀存儲器交替工作,也就是需要設(shè)置兩片128K×8bit的幀存儲器,分別用來存放奇數(shù)場和偶數(shù)場的數(shù)據(jù)信息,因而選用兩片高速靜態(tài)存儲芯片SRAM 628128。

兩片幀存儲器的讀信號MEMR1和MEMR2,寫信號MEMW1和MEMW2均由控制電路產(chǎn)生。其中讀信號與PC機(jī)的讀存儲器信號PC_MEMR有關(guān),而寫信號與圖像采集卡的采樣時(shí)鐘!CLK有關(guān)。幀存儲器的八位數(shù)據(jù)線D0~D7通過接口電路與PC機(jī)的數(shù)據(jù)線PC_D0~PC_D7相連。

上面提到,把幀存儲器映射到D0000H~DFFFFH,這樣尋址范圍只有64K,而一場的圖像數(shù)據(jù)有128K,故采用地址分段實(shí)現(xiàn),這可通過對幀存地址線A16進(jìn)行I/O操作實(shí)現(xiàn)。

(6)時(shí)序發(fā)生電路:主要用來產(chǎn)生圖像采集卡所需的幀存儲器的掃描地址信號和實(shí)現(xiàn)同步并避開行逆程的消隱信號。

(7)地址切換電路:該電路用于切換時(shí)序發(fā)生電路產(chǎn)生的掃描地址信號和PC機(jī)的地址信號。需要用二選一的數(shù)據(jù)選擇器來切換PC機(jī)的地址信號和采集卡上的地址信號。通用的集成電路中只找到四位的數(shù)據(jù)選擇器,若選用它則34條地址線需要九片,那將占用了太多采集卡的空間,故而采用GAL器件來實(shí)現(xiàn)。每片GAL16V8可實(shí)現(xiàn)8位數(shù)據(jù)選擇,而GAL20V8可實(shí)現(xiàn)10位數(shù)據(jù)選擇,從而34條地址線僅需3片GAL16V8和1片GAL20V8。

該圖像采集卡已制作完成,經(jīng)測試性能完全達(dá)到設(shè)計(jì)要求。該圖像采集卡可用于DOS操作系統(tǒng)、也可用于Windows操作系統(tǒng)。由于采用了可編程邏輯器件大大減少了芯片數(shù)目。

采用攝像頭加采集卡作為傳感器,可解決許多常規(guī)傳感器無法實(shí)現(xiàn)的場合。如在鑄造廠的自動澆注過程中,為了測量砂模中鐵水液位的高度,常規(guī)液位傳感器難以承受1400°C的高溫。即使有這樣的傳感器,因?yàn)橐粋€(gè)砂模澆完以后,又有新的砂模傳送過來,不可能在每個(gè)砂模都插一個(gè)液位傳感器。而采用攝像頭拍攝砂模澆口杯的圖像,由計(jì)算機(jī)進(jìn)行圖像處理,就能夠計(jì)算出砂模澆口杯內(nèi)鐵水液位高度,解決了自動澆注系統(tǒng)中的實(shí)時(shí)控制問題。



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉