《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > 基于ATmegal28的LED屏圖像數據解碼設計
基于ATmegal28的LED屏圖像數據解碼設計
摘要: 針對目前對全彩LED顯示屏圖像數據的處理需依賴計算機的情況,提出利用ATmegal28單片機實現JPEG圖像解碼的方法,并利用此方法實現了通過GPRS網絡對全彩LED顯示屏圖像數據的遠程傳輸。針對ATmegal28的資源和性能特點,對JPEG解碼進行了可行性分析。重點論述Huffman解碼、IDCT解碼和圖像縮放的優化算法在ATmegal28單片機上的實現。由于圖像的處理在單片機上實現,降低了產品的成本,具有較強地生產實用性。
Abstract:
Key words :

  隨著LED顯示屏的普及和成本的降低,LED顯示屏已經成為公共場合信息宣傳的一種重要工具。目前實現對LED顯示屏的文字圖像更改的方法主要有:顯示屏通過串口或網線與計算機連接實現更改;通過GPRS網絡實現數據的遠程傳輸,接收后在計算機上用特定軟件解碼后發送到LED顯示屏顯示。以上方法始終需要在計算機平臺上實現,附加成本較高。設計利用手機作為發送端,發送彩信至GPRS模塊,利用ATmegal28單片機直接對彩信圖像進行解碼然后發送到LED顯示屏上進行顯示。

  l JPEG解碼可行性分析

  該設計所用全彩LED屏接收的數據格式為Xmp格式,Xmp格式是簡化的BMP格式。Xmp格式在圖像數據前有6個字節表示圖像的屬性,第1字節為1個點的字節數;第2字節為XMP文件中包含的圖片個數;第3,4字節為圖像的高;第5,6字節為圖像的寬,其后為圖像每點的顏色。每點的顏色用2個字節表示(16位色)。由于所用全彩LED屏只有64×64像素,所以JPEG解碼后還需進行圖像的縮放。

  JPEG解碼過程中所需要的緩存主要包括原始JPEG圖像數據的緩存、中間變量的緩存以及解出的Xmp數據的緩存。根據JPEG圖像的復雜度及壓縮比的不同,一般一幀320×240的彩色JPEG圖像的大小在2~20 KB。JPEG解碼緩存主要用于存儲Huffman表,量化表,IDCT解碼的臨時結果等。這些大約需要8 KB。解出的Xmp數據的緩存要求的RAM相對比較固定為9 KB。綜上JPEG解碼大致需25 KB的RAM。ATmegal28內部只有4 KB的SRAM,所以該系統外擴了64 KB的外部RAM。

  2 軟件實現

  該設計采用avr—gcc作為編譯工具。avr-gcc默認設置棧由內部RAM的頂部向下生長。由于圖像處理過程中需要占用大量的RAM空間,所以應該通過設置把所有數據區移到外部RAM,只留棧區在內部RAM,避免數據的相互覆蓋。

  JPEG解碼過程主要包括Huffman解碼、反量化及IDCT變換、色彩變換等模塊。該文采用的LED顯示屏是64×64點像素,并且只能顯示Xmp格式的圖片。因此在JPEG解碼后需增加圖像的縮放模塊。其流程框圖如圖1所示。

流程框圖

  2.1 Huffman解碼的實現

  Huffman解碼是解碼過程中重要的一環。傳統的哈夫曼解碼需要逐位查找哈夫曼表,進行比較判斷,由于查找過程需要大量的移位及循環。這樣的解碼效率非常低。針對這種情況,充分考慮到ATmegal28的存儲容量的限制,在讀文件頭時,軟件事先構造出不同碼長下的哈夫曼碼字的最小值表和最大值表如表1所示,最小值在哈夫曼表中的索引以及哈夫曼樹各葉子結點對應的編碼表。

軟件事先構造出不同碼長下的哈夫曼碼字的最小值表和最大值表

  在解碼的時候,讀取1串二進制數據,分別與各碼長下的最大值和最小值進行比較,如果在哈夫曼表中沒有該碼長的碼字,說明該比特數據不是完整的Huff_man編碼,接著讀取下一個比特數據加在前面的比特數據組成的新的碼字,然后再在最小值表和最大值表中進行查找,直至找到確切的碼字。最后把該碼字減去同一碼長下最小值,加上此最小值在哈夫曼表中的索引即可得到該碼字在編碼表中的位置。

  2.2 IDCT變換的實現

  將8×8塊中的顏色分量單元的64個值逐一乘以對應的量化表內位置相同的系數,然后再將64個數據進行Z字型的重新排列,進行IDCT變換。IDCT的運算量很大,其中要進行大量的浮點乘法和加法運算,因而在解碼過程中IDCT所占時間最多。采用行列分解法先將二維IDCT分解成一維8點的IDCT,對于一維8點IDCT采用Loeffler的快速算法。圖2為Loef—fler算法的流程圖,Loeffler算法運算因子的解釋如圖3 所示。

Loef

Loeffler算法運算因子的解釋

  直接對旋轉因子進行計算需要4次乘法和2次加法,這樣1次8個點的一維IDCT變換總共需要14次乘法和26次加法。可以對旋轉因子進行變形如式(1)所示: 

公式

  從而1次旋轉因子計算只需要3次乘和3次加。進而進行1次一維IDCT只需11次乘和29次加。因為乘法運算的代價高于加法運算,所以這種變形是有益的。完成一次二維的IDCT運算總共要進行16次的8點一維IDCT運算。由于ATmegal28在速度方面的限制,在IDCT運算過程中把浮點操作改進為整形運算,并且把公式的值擴大211倍存儲起來,為IDCT運算做準備。

 

  2.3 圖像的縮放

  由于該設計所使用的顯示屏為64×64個像素,所以對于JPEG格式的彩信需要先進行解碼,然后再進行縮放,使其成為64×64的格式。一般情況下,圖像縮放是采用目標圖像到源圖像“逆向映射”法。但是考慮到ATmegal28 RAM容量的限制,如果先解出源圖像,則會占用大量的RAM,因此采用源圖像到目標圖像的映射方法。當解出源圖像一個像素的RGB值時,通過運算求出其在目標圖像中的位置;先判斷此位置是否為零,如果是,則直接存儲;如果否,則求兩數的平均值后存儲。對于源圖像中n個像素點對應目標圖像1個像素點的情況,這個目標圖像像素點的顏色分量I=I1/2n+…+In/2,其中:I1為對應源圖像中第一個像素點的顏色分量,In為最后一個的顏色分量。

  該設計所用方法得到的Xmp格式圖像與最近鄰域法所得圖像的比較如圖4所示。圖4(a)為Lena原圖,圖4(b)為采用最近鄰域法得到的:Xmp格式圖像,圖4(c)為本文所用方法得到的Xmp格式圖像。對比可知,這里所用的方法得到的圖像像素點間過渡比較平滑,有比較好的顯示效果。此方法是對最近鄰域法的改進,既避免了在使用最近鄰域法時源圖像某些像素信息的丟失,又節省了系統的RAM資源。

該設計所用方法得到的Xmp格式圖像與最近鄰域法所得圖像的比較

  3 硬件實現

  該系統的硬件實現框圖如圖5所示:

該系統的硬件實現框圖

  系統以ATmegal28單片機為主要芯片,通過RS 232和TR800進行數據傳輸。ATmegal28通過命令讀取TR800接收到的彩信圖像,進行解碼處理。然后通過RS 232把數據傳輸到全彩LED顯示屏進行圖像的更改。在Amegal28與外部SRAM之間使用了鎖存器,該設計采用的是74AHC573。TR-800模塊是一個高性能、功耗小的GPRS模塊,它內嵌了WAP協議棧、TCP/IP協議棧、MMS協議棧便于用戶的二次開發以及固件的升級。由于以上特點,該設計選用此模塊來實現對彩信收發處理功能。LED顯示屏的傳輸協議遵守Xmodem通信協議,采用CRC校驗。整個系統運行效果表明,ATmegal28在采用16 MHz晶振的情況下解碼167×173像素的JPEG圖片大約需要1s。

  4 結 語

  提出適合于全彩LED顯示屏的遠程圖像傳輸設計,并給出關鍵問題的解決方法。由于利用單片機實現了圖像的軟件解碼,這給工程上應用帶來便利。該設計能廣泛應用于車載,或者戶外廣告屏的圖像數據的處理傳輸。將計算量龐大的JPEG解碼算法成功地在ATmegal28上進行移植,并由此實現全彩LED顯示屏圖像數據的遠程更改,具有較強生產實用性。設計完成的“基于GPRS的遠程交互式多用戶智能信息屏”在第十屆“挑戰杯”全國大學生課外學術科技作品競賽中獲二等獎。

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产农村妇女精品一区二区| 亚洲国产欧美一区二区三区丁香婷| 久久午夜色播影院免费高清| 亚洲免费一区二区| 日韩一区二区精品视频| 亚洲三级色网| 亚洲区免费影片| 亚洲国产三级在线| 亚洲成人在线视频网站| 欧美一区二区三区在线看| 亚洲自拍偷拍色片视频| 一区二区三区四区蜜桃| 日韩视频在线一区二区| 亚洲美女性视频| 9色精品在线| 中文久久精品| 亚洲一区二区免费看| 亚洲天堂av在线免费观看| 中国成人亚色综合网站| 亚洲网站视频| 亚洲在线播放| 午夜精品影院| 亚洲福利视频二区| 亚洲肉体裸体xxxx137| 亚洲精品乱码久久久久久蜜桃91 | 亚洲精品综合久久中文字幕| 亚洲人成网站色ww在线| 日韩视频―中文字幕| 一区二区三区四区五区视频| 亚洲欧美日韩国产综合精品二区| 亚洲欧美日韩精品综合在线观看| 亚洲欧美日本另类| 欧美一区二区三区免费观看 | 亚洲国产裸拍裸体视频在线观看乱了中文 | 国产精品视频yy9299一区| 国产精品二区二区三区| 欧美午夜激情视频| 国产精品亚洲综合天堂夜夜| 国产视频丨精品|在线观看| 伊人一区二区三区久久精品| 亚洲一区二区三区免费在线观看| 国模 一区 二区 三区| 国产亚洲亚洲| 亚洲国产精品久久精品怡红院 | 99热精品在线| 亚洲欧美日韩另类| 亚洲大片免费看| 一区二区三区精品在线| 午夜精品一区二区三区电影天堂 | 激情视频一区二区| 99视频超级精品| 香蕉久久一区二区不卡无毒影院| 亚洲高清在线| 亚洲在线成人| 久久综合伊人77777| 欧美日韩在线精品| 国产一区激情| 亚洲最新在线视频| 欧美一区二区三区四区在线观看地址| 91久久夜色精品国产九色| 亚洲一区区二区| 久久夜色精品国产欧美乱| 欧美精品一卡| 国产一级揄自揄精品视频| 亚洲人精品午夜| 亚洲欧美日韩在线观看a三区| 亚洲国产精品专区久久| 午夜国产精品视频| 欧美国产日韩a欧美在线观看| 国产精品爽黄69| 亚洲国产视频直播| 先锋a资源在线看亚洲| 一二美女精品欧洲| 久久免费国产精品1| 欧美午夜精品久久久久免费视| 国产一区深夜福利| 一区二区三区**美女毛片| 亚洲国产日韩一级| 新67194成人永久网站| 欧美黑人在线观看| 国产在线成人| 亚洲午夜精品视频| 日韩亚洲视频| 欧美成人精品高清在线播放| 国产欧美日韩综合精品二区| 亚洲靠逼com| 91久久中文字幕| 久久国产视频网| 国产精品s色| 亚洲人体影院| 亚洲黄色一区二区三区| 久久精品最新地址| 国产精品xxxav免费视频| 亚洲激情在线视频| 亚洲大胆人体视频| 久久精品国产一区二区三区免费看| 欧美三级日本三级少妇99| 亚洲成人在线视频播放| 欧美主播一区二区三区美女 久久精品人 | 久久久久久综合| 欧美日韩国产小视频| 在线观看视频免费一区二区三区| 亚洲男人的天堂在线| 亚洲午夜精品一区二区三区他趣 | 精品二区久久| 欧美一级免费视频| 欧美在线播放高清精品| 国产精品久久久久一区二区| 亚洲九九精品| 一本色道久久综合亚洲精品小说 | 亚洲欧美日韩爽爽影院| 亚洲淫片在线视频| 欧美视频中文在线看| 日韩视频在线观看| 这里只有视频精品| 欧美色欧美亚洲另类二区| 亚洲三级电影在线观看| 亚洲精品偷拍| 欧美精品久久久久久| 在线观看视频一区二区| 亚洲电影网站| 麻豆视频一区二区| 伊人久久久大香线蕉综合直播| 久久国产精品一区二区| 久久久综合免费视频| 国产综合亚洲精品一区二| 欧美中文字幕视频在线观看| 久久久高清一区二区三区| 国产亚洲欧美日韩精品| 亚洲天堂久久| 亚洲人成在线影院| 亚洲美女诱惑| 欧美激情一区在线| 亚洲黄色影片| 一区二区三区**美女毛片| 欧美精品网站| 99re6热在线精品视频播放速度| 日韩午夜高潮| 欧美午夜在线视频| 亚洲欧美成人一区二区在线电影 | 亚洲一区二区三区涩| 国产精品免费一区二区三区在线观看| 中文有码久久| 久久国产主播| 在线精品视频一区二区| 亚洲精品一区二区三区av| 欧美日韩国产一级片| 亚洲一本视频| 久久人人精品| 最新高清无码专区| 亚洲欧美综合国产精品一区| 国产一区二区三区久久悠悠色av | 欧美在线观看你懂的| 激情亚洲网站| 99视频在线精品国自产拍免费观看| 欧美午夜精品久久久久久浪潮| 午夜一区二区三区不卡视频| 另类亚洲自拍| 一区二区三区视频在线看| 久久久999精品| 亚洲精品精选| 欧美一区二区三区播放老司机| 狠狠狠色丁香婷婷综合激情| 亚洲精品在线视频观看| 国产精品视频免费一区| 亚洲国产小视频| 国产精品盗摄久久久| 亚洲国产欧美久久| 欧美视频一区二区三区…| 欧美一区二区三区免费在线看| 欧美高清在线视频| 亚洲欧美三级在线| 欧美精品一区二| 欧美一区二区三区免费视| 欧美日韩成人综合在线一区二区| 午夜精品福利视频| 欧美日韩精品免费观看| 欧美一区二区三区四区高清| 欧美久久久久免费| 久久国产精品久久国产精品| 欧美视频不卡| 亚洲第一级黄色片| 国产精品美女在线| 日韩天堂在线视频| 国内精品免费在线观看| 亚洲欧美日韩精品久久久| 亚洲成人在线观看视频| 欧美一区二区女人| 99国产精品私拍| 欧美va天堂在线| 午夜在线成人av| 欧美日韩在线看| 亚洲人成在线播放| 国产欧美一区二区精品性色| 一级成人国产| 亚洲国产高清一区二区三区| 久久激情五月激情| 亚洲午夜精品| 欧美三级日韩三级国产三级| 亚洲精品免费一区二区三区|