freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于linux操作系統(tǒng)的嵌入式設備圖像顯示技術(shù)與實現(xiàn)畢業(yè)論文-預覽頁

2025-07-16 13:29 上一頁面

下一頁面
 

【正文】 編寫;l 交叉編譯技術(shù);l 交叉調(diào)試方法;l 項目的實施; 重點:l ARM軟件開發(fā)實驗環(huán)境的搭建;l ARM硬件開發(fā)實驗環(huán)境的搭建;l 開源代碼的修改和編譯;l Linux動態(tài)庫、靜態(tài)庫的編譯方法及調(diào)用方法;l 交叉編譯、調(diào)試技術(shù)。l 教師根據(jù)學生完成的任務情況及撰寫的實習報告評定學生本次任務的成績(百分制)。rapidtechnology,technologyofhastechnologicaldescribesimageBMPtheCompressionBMPquickly,aembeddedThecrosspiledonLINUXdisplayapplicationsdisplayeddevice.graphicsvariousFramebuffer目 錄引言 11緒論 1 1 22基本技術(shù)和芯片簡介 2 2 linux簡介 5 5 53圖像格式解析 6 BMP格式圖像 7 JPEG格式圖像 12 GIF格式圖像 12 PNG格式圖像 124 在PC下基于FRAMEBUFFER的圖像顯示 22 22 FRAMEBUFFER的圖像顯示實現(xiàn) 235 在開發(fā)板下基于FRAMEBUFFER圖像顯示 45 環(huán)境搭建 22 45 交叉編譯 45 交叉編譯 45 交叉編譯 45 交叉編譯 45 交叉編譯后程序在開發(fā)板上圖像顯示測試結(jié)果 47結(jié)論 48致謝 48參考文獻 49從自然界獲取信息感受外部世界,是通過聽覺、視覺、觸覺、嗅覺、味覺等來完成。隨著嵌人式技術(shù)的迅猛發(fā)展,嵌入式技術(shù)已經(jīng)成為一個萬眾矚目的焦點,目前已經(jīng)廣泛應用于信息家電、網(wǎng)絡、工業(yè)控制、航空航天等領域。它的接口非常簡單,通過它可以十分方便地構(gòu)建一個圖形系統(tǒng)。1緒論隨著社會不斷進步,技術(shù)不斷更新,一輪又一輪的“技術(shù)革命”沖擊著市場。工業(yè)上已經(jīng)過了人工控制的年代,處處都是大型機械數(shù)字化管理,工廠對人工的需求在下降,對技術(shù)的需求在上升。嵌入式系統(tǒng)是將先進的計算機技術(shù)、半導體技術(shù)和電子技術(shù)與各個行業(yè)的具體應用相結(jié)合的產(chǎn)物。伴隨各種格式圖像標準的頒布。ARM處理器具有性能高、成本低和能耗省的特點。使得ARM在諸多嵌入式圖像編解碼實現(xiàn)方法中更具有優(yōu)勢。這主要是從應用上加以定義的,從中可以看出嵌入式系統(tǒng)是軟件和硬件的綜合體,還可以涵蓋機械等附屬裝置。 嵌入式系統(tǒng)必須根據(jù)應用需求對軟硬件進行裁剪,滿足應用系統(tǒng)的功能、可靠性、成本、體積等要求。嵌入式系統(tǒng)的幾個重要特征: ①系統(tǒng)內(nèi)核小。嵌入式系統(tǒng)的個性化很強,其中的軟件系統(tǒng)和硬件的結(jié)合非常緊密,一般要針對硬件進行系統(tǒng)的移植,即使在同一品牌、同一系列的產(chǎn)品中也需要根據(jù)系統(tǒng)硬件的變化和增減不斷進行修改。 ④高實時性的系統(tǒng)軟件(OS)是嵌入式軟件的基本要求。 ⑥嵌入式系統(tǒng)開發(fā)需要開發(fā)工具和環(huán)境。⑧國內(nèi)常見的嵌入式系統(tǒng)有7種:Linux、uClinux、WinCE、PalmOS、Symbian、uCOSII、VxWorks。如圖所示。交叉編譯工具為:。技術(shù)具有性能高、成本低和能耗省的特點。ARM9處理器采用5級流水線,指令執(zhí)行效率較ARM7高,而且?guī)в蠱MU功能,這是與ARM7的重要區(qū)別。ARM的應用已遍及工業(yè)控制、消費類電子產(chǎn)品、通信系統(tǒng)、網(wǎng)絡系統(tǒng)、無線系統(tǒng)等各類產(chǎn)品市場。為了能夠進行快速浮點運算,ARM11增加了向量浮點單元。OK6410開發(fā)板(圖11)基于三星公司最新的ARM11處理器S3C6410,擁有強大的內(nèi)部資源和視頻處理能力,可穩(wěn)定運行在667MHz主頻以上,支持Mobile DDR和多種NAND Flash。OK6410的軟件系統(tǒng)目前支持WinCE 、 、提供標準板級支持包(BSP)并開放源碼,其中包含了所有接口的驅(qū)動程序,客戶可以直接加載使用。這種格式的特點是包含的圖像信息較豐富,乎不進行壓縮,但由此導致了它與生俱生來的缺點占用磁盤空間過大。H4D42,ASCII字符39。//備用 int bfReserve2。H4D42。BITMAPFILEHEADER的第3個、第4個屬性分別是bfReservedbfReserved2(各2字節(jié)),這里是2個保留屬性,都為0,這里等于amp。H00000076=118,表示數(shù)據(jù)區(qū)從文件開始往后數(shù)的118字節(jié)開始。//圖象高度,像素單位int biPlanes。表示bmp圖片數(shù)據(jù)區(qū)的大小,當上一個屬性biCompression等于0時,這里的值可以省略不填long biXPlosPerMeter。//表示有多少個重要的顏色,等于0時表示所有顏色都很重要 }BITMAPINFOHEADER。)一個bmp文件中有沒有RGBQUAD結(jié)構(gòu)體,可以根據(jù)前面BITMAPFILEHEADER結(jié)構(gòu)體的第5個屬性bfOffBits來判 斷因為BITMAPINFOHEADER結(jié)構(gòu)體長度為40bit,如果BITMAPINFOHEADER結(jié)構(gòu)體結(jié)束后還未到DIB數(shù)據(jù)區(qū)的偏移量,就說 明接下來的數(shù)據(jù)是RGBQUAD結(jié)構(gòu)體部分。如果一個位是0,顯示時就使用索引0的RGB值,如果位是1,則使用索引1的RGB值。每個象素用8位表示,并用這8位作為彩色表的表項來查找該象素的顏色。它的情況比較復雜,當biCompression成員的值是BI_RGB時,它沒有調(diào)色板。分別用于描述紅、綠、藍分量在16位中所占的位置。biBitCount=24 表示位圖最多有224種顏色。如果 biCompression成員的值是BI_BITFIELDS時,原來調(diào)色板的位置將被三個DWORD變量占據(jù),成為紅、綠、藍掩碼,分別用于描述紅、綠、藍分量在32位中所占的位置。 第二個字節(jié)的值為1:圖象結(jié)束。壓縮數(shù)據(jù)格式需要字邊界(word boundary)對齊 ② BI_RLE4:每個象素為4比特的RLE壓縮編碼,同樣也可使用編碼方式和絕對方式中的任何一種進行壓縮,這兩種方式也可在同一幅圖中的任何地方使用。此外,BI_RLE4也同樣聯(lián)合使用第二個字節(jié)中的值表示: 第二個字節(jié)的值為0:行的結(jié)束。 df=fopen(dfname,wb)?! ?*處理高字部分*/  ch1=高字部分的顏色值。 tag=TRUE。c1=c1|c2。  temp=ch1。  ……  }while(!feof(sf))  fclose(sf)?! seek(sf,number,0)。 color2=fread(sf)。 fputc(count2,df)?! (3) 顏色表 顏色表用于說明位圖中的顏色,它有若干個表項,每一個表項是一個RGBQUAD類型的結(jié)構(gòu),定義一種顏色。 // 紅色的亮度(值范圍為0255) BYTErgbReserved。顏色索引表編號從0開始,總共16個 顏色,所以編號為015。當biBitCount=8時,1個像素占1個字節(jié)。 // 字節(jié)數(shù)必須是4的倍數(shù)位圖數(shù)據(jù)的大小(不壓縮情況下):DataSize= DataSizePerLine* biHeight。也就是說,JPEG圖像存儲格式既滿足了人眼對色彩和分辨率的要求,又適當?shù)娜コ藞D像中很難被人眼所分辨出的色彩,在圖像的清晰與大小中JPEG找到了一個很好的平衡點。解碼的過程則是編碼的逆過程。jc垃,fp);jpeg start—press(amp。jcfg);jpeg destroy_press(amp。GIF文件還通過LZW壓縮算法壓縮圖象數(shù)據(jù)來減少圖象尺寸。文件頭包含GIF文件署名(Signature)和版本號(Version);GIF數(shù)據(jù)流由控制標識符、圖象塊(Image Block)和其他的一些擴展塊組成;文件終結(jié)器只有一個值為0x3B的字符(39。其實GIF是將多幅圖像保存為一個圖像文件,從而形成動畫,所以歸根到底GIF仍然是圖片文件格式。網(wǎng)絡通訊中因受帶寬制約,在保證圖片清晰、逼真的前提下,網(wǎng)頁中不可能大范圍的使用文件較大的bmp、jpg格式文件,gif格式文件雖然文件較小,但其顏色失色嚴重,不盡人意,所以PNG格式文件自誕生之日起就大行其道。雖然PNG文件規(guī)范沒有要求PNG編譯碼器對可選數(shù)據(jù)塊進行編碼和譯碼,但規(guī)范提倡支持可選數(shù)據(jù)塊。   (2) 基色和白色度數(shù)據(jù)塊cHRM(primary chromaticities and white point)。   (5) 物理像素尺寸數(shù)據(jù)塊pHYs(physical pixel dimensions)。   (9) 圖像透明數(shù)據(jù)塊tRNS (transparency)。幀緩沖驅(qū)動的應用廣泛,在linux的桌面系統(tǒng)中,Xwindow服務器就是利用幀緩沖進行窗口的繪制。我們通過不停的向地址中寫入數(shù)據(jù),顯示控制器就會不斷地自動從內(nèi)存中取數(shù)據(jù)并顯示出來。例如用 cp /dev/fb0 tmp命令可將當前屏幕的內(nèi)容拷貝到一個文件中,而命令cp tmp /dev/fb0 則將圖形文件tmp顯示在屏幕上。映射操作都是由系統(tǒng)內(nèi)核來完成。 ② 用ioctrl操作取得當前顯示屏幕的參數(shù),如屏幕分辨率,每個像素點的比特數(shù)。FrameBuffer 只是一個提供顯示內(nèi)存和顯示芯片寄存器從物理內(nèi)存映射到進程地址空間中的設備。 然后確定LINUX的引導方式,本次調(diào)試系統(tǒng)引導方式為GRUB引導。本程序?qū)PEGLIB函數(shù)庫進行重新編寫,實現(xiàn)代碼優(yōu)化,對圖像壓縮的更加全面。彩色數(shù)據(jù)送入LCD顯示緩沖區(qū),在LCD上顯示出解碼重構(gòu)圖像。采用自適應的Huffman碼表,首先要統(tǒng)計輸入圖像的特性,先生成碼樹,再做反推得到各級Huffman碼表。下圖42為Huffman解碼一個碼字的流程圖。在位圖被壓縮稱為JPEG文件后,都會生成自己的量化表。代碼:void IQtIZzBlock(short *s){ short i,j。 for(i=0。j++) { tag = Zig_Zag[i][j]。完成一次二維88的IDCT運算總共要進行16次的8點一維IDCT運算。在8次一維的行轉(zhuǎn)換完成后,對存在中間數(shù)據(jù)緩沖區(qū)的數(shù)據(jù)再進行8次的一維列IDCT變換。 R=Y+= Y = Y+(Cb 128)代碼:void tranRGBto256(){ int i,iRed,IGreen,iBlue。i) {iBlue = *lpPtr++。 iGreen = (iGreen*7+127)/255。顯示程序中加載JEPG代碼如下:int fh_jpeg_load(char *filename,unsigned char *buffer, unsigned char ** alpha, int x,int y){ struct jpeg_depress_struct cinfo。 int px,py,c。cinfo。 =jpeg_cb_error_exit。 } jpeg_create_depress(ciptr)。 jpeg_start_depress(ciptr)。 if(c==3) { lb=(*ciptrmemalloc_small)((j_mon_ptr) ciptr,JPOOL_PERMANENT,c*px)。 memcpy(bp,lb,px*c)。 fclose(fh)。 struct r_jpeg_error_mgr emgr。cinfo。 =jpeg_cb_error_exit。 } jpeg_create_depress(ciptr)。 jpeg_start_depress(ciptr)。 *x=px。 return(FH_ERROR_OK)。 for( 。 getc_image_buf(img_buf)。 c++) *p++ = getc_image_buf(img_buf)。 } default: c = getc_image_buf(img_buf)。 p = buf。) { switch (n = getc_image_buf(img_buf)) { case EOF: return 0。 getc_image_buf(img_buf)。 for (c = 0。 if (c n) put4((c1 4) amp。 } default: c = getc_image_buf(img_buf)。 0x0f。 1) ? c2 : c1)。 file_header fheader。 BYTE head_buf[INFO_HEAD_SIZE]。 if(read_image_buf(amp。 } [0] = head_buf[0]。BM39。 } = dwswap(dwread(amp。headsize, sizeof(int)) != sizeof(int)) { imagetype =0。img_buf,amp。 = wswap(*((WORD *)amp。 = wswap(*((WORD *)amp。 imagebpp = 。head_buf, INFO_HEAD_SIZE sizeof(DWORD)) != INFO_HEAD_SIZE sizeof(DWORD)) { return 1。head_buf[4]))。head_buf[10]))。head_buf[16]))。head_buf[24]))。head_buf[32]))。 pression
點擊復制文檔內(nèi)容
醫(yī)療健康相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1