基于Nios II的雙網(wǎng)傳真機(jī)系統(tǒng)的研究與開發(fā)
2.1 雙網(wǎng)數(shù)字傳真機(jī)系統(tǒng)硬件設(shè)計(jì)
本文設(shè)計(jì)的雙網(wǎng)數(shù)字傳真機(jī)以Altera Nios II軟核為處理器、CIS掃描器件、電機(jī)、TPH打印器件、CIS、電機(jī)、TPH打印驅(qū)動(dòng)板、Alter EP1C20開發(fā)板、Modem為硬件平臺(tái),通過Altera的FPGA實(shí)現(xiàn)硬件電路模塊,主要需要實(shí)現(xiàn)的電路模塊有A/D采樣控制邏輯模塊、圖像二值化處理模塊、MH[3]編碼模塊、MH譯碼模塊、掃描、打印、電機(jī)時(shí)序驅(qū)動(dòng)邏輯模塊。
(1)A/D采樣控制邏輯模塊
通過CIS掃描器件把原稿的光信號(hào)轉(zhuǎn)化為電信號(hào),將CIS掃描器件獲得的模擬電信號(hào)通過A/D轉(zhuǎn)換器件轉(zhuǎn)化為8 bit的數(shù)字信號(hào)輸入圖像處理二值化模塊。A/D采樣控制邏輯完成A/D器件的時(shí)序驅(qū)動(dòng)。
(2)圖像二值化處理模塊
本模塊輸入數(shù)據(jù)為A/D轉(zhuǎn)化后的每像素8 bit數(shù)據(jù),根據(jù)掃描原有文本、灰度圖像、圖文并茂3種類型自動(dòng)判別選用不同的算法,進(jìn)行偽灰度處理,即根據(jù)抖動(dòng)表(Dither)進(jìn)行二值化處理,得到人眼感覺有層次(灰度變化)的二值圖像,即半色調(diào)圖像(Halftone)?;叶戎祱D像轉(zhuǎn)化為二值圖像的算法原理是:通過實(shí)際的中間色調(diào)信號(hào)與存儲(chǔ)在ROM中的閾值信號(hào)比較形成二值圖像信號(hào)。
本文引用地址:http://www.biyoush.com/article/151770.htm
一般傳真機(jī)采用的抖動(dòng)表數(shù)據(jù)是8×8的Bayes矩陣,在實(shí)驗(yàn)中采用該方法處理得到的效果并不理想,圖像對(duì)比度不是很強(qiáng)烈,整體效果較暗。因此作者根據(jù)FPGA硬件處理的特性,采用16×16的抖動(dòng)矩陣對(duì)傳真圖像進(jìn)行處理。采用該方法適應(yīng)了FPGA 芯片擁有豐富寄存器資源的特點(diǎn),用來存儲(chǔ)改進(jìn)抖動(dòng)表,在不影響處理速度的情況下,明顯改進(jìn)圖像的處理效果,提高圖像對(duì)比度,圖像效果比較接近原圖。從得出的效果圖可以明顯看出,改進(jìn)方案比原有Bayer抖動(dòng)表做抖動(dòng)的圖像對(duì)比度要好得多,代價(jià)為增加了一千多位寄存器。從而較好地解決了對(duì)圖像二值化處理中對(duì)比度不強(qiáng)的問題。
(3)編碼模塊
將二值化后的圖像數(shù)據(jù)經(jīng)一維MH編碼后交付通信模塊使用。MH編碼是一維改進(jìn)的Huffman編碼,是ITU-T T.4[4]標(biāo)準(zhǔn)中的一部分,ITU-T T.4標(biāo)準(zhǔn)的全稱是三類傳真機(jī)終端文檔傳輸標(biāo)準(zhǔn)。MH編碼具有效率高、容易擴(kuò)展等特點(diǎn)。三類傳真機(jī)一般都實(shí)現(xiàn)了一維MH編碼和譯碼,有的也實(shí)現(xiàn)了二維MR編碼,本文用硬件電路實(shí)現(xiàn)一維MH編碼。對(duì)于二值信源來說,一幅傳真圖像是由掃描線上的像素組成的。而每一掃描線又總是由一些黑像素和白像素組成。將連續(xù)發(fā)生的黑像素為連‘1’,白像素為連‘0’,也稱為黑游程和白游程。連‘1’的個(gè)數(shù)稱為黑游程的長度,連‘0’的個(gè)數(shù)稱為白游程的長度。黑白游程交替出現(xiàn)。針對(duì)游程編碼,哈夫曼MH碼元很好地解決了傳真信源的壓縮問題,是T.30協(xié)議中規(guī)定的編碼方式之一。實(shí)現(xiàn)時(shí)通過讀取像素信息存儲(chǔ)FIFO判斷是黑游程還是白游程。當(dāng)發(fā)生了黑白游程切換時(shí),根據(jù)黑白游程計(jì)數(shù)形成碼表訪問地址,根據(jù)地址查找碼表得到對(duì)應(yīng)的編碼碼元。MHC編碼硬件模塊圖如圖3所示。
該編碼數(shù)據(jù)將封裝在T30協(xié)議中進(jìn)行傳輸,T30協(xié)議規(guī)定的每樣張的數(shù)據(jù)傳輸格式如圖4所示。其中EOL為End Of Line,即行同步碼,格式為000000000001。同步碼是緊跟在每一行掃描線之后的特殊碼字,它在有效數(shù)據(jù)中不可能出現(xiàn),因而在突發(fā)錯(cuò)誤之后能重新建立同步。特殊地,每頁文件的第一個(gè)數(shù)據(jù)之前也設(shè)置一個(gè)EOL。
填充碼fill的作用是保證每掃描線,即每一行的數(shù)據(jù)傳輸時(shí)間不小于某一規(guī)定時(shí)間T,T為發(fā)送一行編碼數(shù)據(jù)所用的最小時(shí)間,ITU-T T.4標(biāo)準(zhǔn)建議中規(guī)定T=20 ms,不足20 ms時(shí)間應(yīng)加入填充碼,其格式為長度不一的全“0”串。RTC為返回控制碼,其格式為6個(gè)連發(fā)的EOL碼,表示一頁文件碼的傳輸結(jié)束。
評(píng)論