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

正文內(nèi)容

畢業(yè)設(shè)計-基于糾錯碼的冗余技術(shù)的研究——evenodd碼的設(shè)計與實現(xiàn)-論文(編輯修改稿)

2025-01-06 18:04 本頁面
 

【文章內(nèi)容簡介】 2 1 2 1,0 0 0 02 1 2 1,0 0 0 0( ) ( ) ( ( ) ) ( ( ) )( ( ) ) ( 1 ) ( ( ) )( ( ) ) ( ( ) ) , 10mmmm m m m m ml m l t l t tl l l t l tm m m ml t l t tl t l tm m m ml t l t tl t l ta a S aa m S S aaa? ? ? ? ? ?? ? ? ?? ? ? ? ? ?? ? ? ????? ? ? ?? ? ? ????? ? ? ?? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ?? ? ? ? ? ? 公 式 ( )2 1 1 1,0 0 0 02 1 2 1 1, , 1 ,0 0 0 0 10 ( ( ) ) ( ( ) )( ( ) ) ( ( ) ) ( )mmm m m ml t l t tl t l tm m m m ml t l t t m t tl t l t taaa a a? ? ? ????? ? ? ?? ? ? ? ?? ? ? ? ?? ? ? ? ?? ? ? ? ? ?? ? ? ? ? ? ? ?2 1 2 1 1, , 1 ,0 0 0 0 1( ( ) ) ( ( ) ) 1 1mm m m m ml t l t t m t tl t l t ta a a? ? ? ? ?? ? ? ? ?? ? ? ? ?? ? ? ? ? ? ? , 公 式 ( ), ( 1 )( ) 1 1 , (1 2 )m j mj i iaS? ? ? ? ? ? ? ?? 公 式,( ) 1 ( ) 1 ( ) , , 13m i m mj i j i j j i ja S a? ? ? ? ? ? ? ? ? ? ? ? ? ? ???(0) 公 式 ( ),12 ( ) 1 2 ( ) 1 ( ) ,2 ( ) 1 2 ( ) 1 2 ( ) 1m j m mm j m m jj i j i j j i ij i j i j ia S aa S a? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ???( )(0), 公 式 ( 14 ), 公 式 ( 15 ) 3 軟件設(shè)計與目標(biāo) 設(shè)計目標(biāo)及內(nèi)容 對于本軟件的設(shè)計可以概述為以下三個方面: ( 1)編碼算法的設(shè)計是本軟件要實現(xiàn)的核心內(nèi)容,通過 EVENODD 編碼原理利用 5張原始圖片的數(shù)據(jù)生成 2 張冗余的校驗數(shù)據(jù)。 ( 2) 譯碼 算法是體現(xiàn)運(yùn)用 EVENODD 原理能夠勝任將出錯的兩個數(shù)據(jù)塊的數(shù)據(jù) 恢復(fù)的關(guān)鍵,也是體現(xiàn)了本原理在現(xiàn)實運(yùn)用中具有的高可靠性和高穩(wěn)定性。 ( 3)界面設(shè)計是實現(xiàn)友好的人機(jī)交互界面不可或缺的重要部分, EVENODD編碼的實現(xiàn)過程和結(jié)果都要通過該界面表現(xiàn)和保存。 通過對上述內(nèi)容的設(shè)計我們必須達(dá)到以下目標(biāo): ( 1)滿足用戶對 EVENODD 編碼過程的直觀理解; ( 2)創(chuàng)建友好的人機(jī)操作界面; ( 3)滿足用戶對 5 張簡單圖片的備份; ( 4)滿足用戶利用備份圖片和尚未被破壞的原圖片還原出錯圖片 軟件總體功能結(jié)構(gòu) 功能結(jié)構(gòu)圖 軟件功能圖如圖 2: 功能說明 1. 圖像處理 為了方便 EVENODD 碼 的演示,本軟件所選用的輸入數(shù)據(jù)就是圖片。在正式進(jìn)行編碼之前必須對圖像進(jìn)行一些必要的處理以符合算法的接口標(biāo)準(zhǔn)。因此,圖像處理功能模塊又可以分成以下幾個子功能模塊,如:圖像載入、圖像保存、圖像破壞、圖像分割、圖像表達(dá)等。 ? 圖像載入:從本地計算機(jī)中讀取圖片文件,可以選擇本地計算機(jī)中的任何文件夾。 ? 圖像保存:將經(jīng)過處理后的圖片保存在當(dāng)前的文件夾中或者其他文件夾中。 ? 圖像破壞:將圖片的數(shù)據(jù)全部破壞供 譯碼 使用。它是配合軟件的仿真而單獨設(shè)計的。 ? 圖像分割:從以圖像格式顯示的圖片中讀取像素并存儲在二維數(shù)組中,供以后處理使用 。 ? 圖像表達(dá):像素經(jīng)過處理后是存儲在二維數(shù)組中的,該子功能的作用是將二EVENODD 編碼的實現(xiàn) 圖像處理 編碼 譯碼 圖 2 功能結(jié)構(gòu)圖 維數(shù)組以圖片的格式表達(dá)出來,與圖像分割功能作用相反。 2. 編碼 編碼功能是整個軟件進(jìn)行的關(guān)鍵,通過原始圖片生成 2 張冗余校驗圖片,為 譯碼 過程的順利進(jìn)行做準(zhǔn)備。 3. 譯碼 該功能是在實際生活中運(yùn)用最廣的一部分,它通過尚未有數(shù)據(jù)損失的原始圖像和通過編碼形成的尚未遭到數(shù)據(jù)破壞的校驗數(shù)據(jù)將已破壞的數(shù)據(jù)恢復(fù)出來(已破壞數(shù)據(jù)塊的數(shù)目≤2)。 設(shè)計實現(xiàn)的策略及主要算法描述 在該軟件的實現(xiàn)過程中,基于面向?qū)ο蟪绦蛟O(shè)計思想,在 實現(xiàn)過程中,把每一個待處理的數(shù)據(jù)看作一個 對象,那么每個對象在實際的應(yīng)用中也就是一張圖片(也可以叫做一個數(shù)據(jù)塊)。 .根據(jù) EVENODD 的編碼原理,處理的數(shù)組大小 m 必須為素數(shù),在整個軟件的實現(xiàn)過程中取 m= 5。由于以上介紹的編碼過程都是針對單個數(shù)組的,所以在算法處理過程中,必須從每個對象中抽取一列組成單個的數(shù)據(jù),將每個 4 5 大小的數(shù)組看作一個基本處理單元,然后按照編碼原理進(jìn)行算法的設(shè)計。 VENODD 編碼算法 1. 算法描述 EVENODD 編碼算法是產(chǎn)生冗余校驗數(shù)據(jù)的核心算法。在實現(xiàn)該算法過程中,假設(shè)接口為 5 個數(shù)據(jù)對象,由于在該算法中實際操作對象是一個 4 5 大小的數(shù)組,首先面對的問題是如何將對象中的數(shù)據(jù)讀出來并且將他們組合成符合規(guī)格的數(shù)組?;谏鲜銮闆r,設(shè)計能從對象數(shù)組中獲取某列的方法 getColumnData( pictureInComp[] obj, int i)成為必要。 利用該方法可以分別在每個對象的數(shù)據(jù)中獲取相應(yīng)列的數(shù)據(jù)并返回,組成一個符合規(guī)格的數(shù)組。這個數(shù)組就是最小的處理單元。根據(jù)公式( 1)可以得到該處理單元產(chǎn)生的水平校驗位的值,根據(jù)公式( 3)不難得出公共校驗因子 S ,再由公式( 2)對角校驗值也就很容易的得到了。將該過程置于一個循環(huán)中依次處理對象的每一 列,每列產(chǎn)生的水平校驗值和對角校驗值依照相反的方式重新組合便形成了兩個冗余對象即水平校驗對象和對角校驗對象。 2. 設(shè)計流程圖 編碼算法的設(shè)計流程圖如圖 3: 圖 3 編碼設(shè)計流程圖 3. 算法實現(xiàn) 編碼算法的實現(xiàn)如程序清單 3— 1 程序清單 31 EVENODD編碼算法 protected void encode(){ int[][] dataCache , tempMatrix1 , tempMatrix2。 tempMatrix1= new int[tempMemory[0].getColumn()][tempMemory[0].getRow()]。 //暫存運(yùn)算過程中水平校驗位的數(shù)據(jù)值的轉(zhuǎn)置數(shù)據(jù) tempMatrix2= new int[tempMemory[0].getColumn()][tempMemory[0].getRow()]。/暫存運(yùn)算過程中對角輸入對象數(shù)組是否合法結(jié)束對象數(shù)組中每個元素中的數(shù)據(jù)各行各列是否相同將對象數(shù)組中的數(shù)據(jù)轉(zhuǎn)移到本地變量中 ( tem p M em o ry p ict u reIn C o m p [] )調(diào)整對象數(shù)組中每個元素的數(shù)據(jù)大小使其各行和各列的大小相同i tem p M em o ry . len g thg etC o lu m n Dat a ( p ict u reIn co mp [] , in t )獲取該對象數(shù)組中每個元素第 i 列的數(shù)據(jù)并組成一個新的數(shù)組存放在 ( d atac ach e in t [][] ) 中horiExclusive _ OR ( int [][] )根據(jù)公式 ( 2 ) 單獨處理一個數(shù)組生成對象數(shù)組中的第 i 列水平校驗數(shù)據(jù)diagExclusive _ OR ( int [][] , S )根據(jù)公式 ( 1 ) 獲得 S ; 根據(jù)公式( 3 ) 單獨處理一個數(shù)組生成對象數(shù)組中的第 i 列對角校驗數(shù)據(jù)獲得上述的數(shù)據(jù)并實例化水平校驗對象對角校驗對象i ++定義指示對象數(shù)組大小的變量 in t i = 0開始從接口獲得待處理對象數(shù)組否是 是是否否提示出錯原因 校驗位的數(shù)據(jù)值的轉(zhuǎn)置數(shù)據(jù) int[][] temp= new int[tempMemory[0].getRow()][tempMemory[0].getColumn()]。//充當(dāng)數(shù)組轉(zhuǎn)置時的臨時變量 dataCache = new int[tempMemory[0].getRow()][]。 for(int i = 0 。 i 。 i++){ dataCache = (tempMemory, i)。//獲得對象元素中的數(shù)據(jù)中的每一列 ,組成一個數(shù)組 tempMatrix1[i] = (dataCache)。//獲取水平校驗(公式 1) tempMatrix2[i] = (dataCache, (dataCache))。 // 獲取對角校驗數(shù)據(jù)(公式 2) } //將修復(fù)的數(shù)據(jù)存入對象 (tempMatrix1, temp)。//恢復(fù)原數(shù)據(jù)格式將數(shù)組轉(zhuǎn)置 horiRedun = new pictureInComp(temp)。//水平冗余校驗對象實例化 (tempMatrix2, temp)。 diagRedun = new pictureInComp(temp)。//對角冗余校驗對象實例化 } EVENODD 譯碼算法 1. 算法描述 EVENODD 譯碼算法是 EVENODD 碼中的關(guān)鍵,是使該碼能從理論運(yùn)用到現(xiàn)實的基礎(chǔ)。它與編碼算法配合使用,使用的前提是已經(jīng)由編碼算法產(chǎn)生出了冗余校驗值。 EVENODD譯碼算法最多能使 2 個出錯數(shù)據(jù)塊恢復(fù)。它是在尚未破壞的數(shù)據(jù)塊的數(shù)據(jù)的基礎(chǔ)上運(yùn)用譯碼原理進(jìn)行操作的。由于每個數(shù)據(jù)塊被破壞的幾率是均等的,不同的數(shù)據(jù)塊被破壞,處理的方法也相應(yīng)有所不同。根據(jù) EVENODD 譯碼原理,我們可以把 該算法分為兩部分來實現(xiàn): ( 1)根據(jù)錯誤數(shù)據(jù)塊號找到對應(yīng)的處理方法。 ( 2)實現(xiàn)每種情形的處理方法。 與 encode 算法思想一樣,我們同樣由待處理的 7 個不同對象( 5 個原數(shù)據(jù)塊, 2 個冗余校驗數(shù)據(jù)塊),獲得最小數(shù)據(jù)單元,然后根據(jù) 譯碼 原理對最小數(shù)據(jù)單元進(jìn)行處理。最后將每一個最小數(shù)據(jù)單元恢復(fù)的結(jié)果存儲到錯誤數(shù)據(jù)塊相應(yīng)的位置。 2. 設(shè)計流程圖 EVENODD 譯碼設(shè)計流程圖如圖 4: 圖 4(a) EVENODD譯碼流程圖 輸入對象數(shù)組否合法結(jié)束將對象數(shù)組中的數(shù)據(jù)轉(zhuǎn)移到本地變量中 ( tem p M em o ry p ictu reI n C o m p [] )調(diào)整對象數(shù)組中每個元素的數(shù)據(jù)大小使其各行和各列的大小相同判斷有幾個數(shù)據(jù)塊出錯定義指示對象數(shù)字大小的變量 in t i = 0調(diào)整數(shù)據(jù)塊號判斷錯誤數(shù)據(jù)塊的位置 err o r 1 = m err o r 2 = m + 1 err o r 1 m err o r 2 = m err o r 1 m err o r 2 = m + 1 err o r 1 m err o r 2 m15開始從接口獲得待處理對象數(shù)組及錯誤數(shù)據(jù)塊號檢查數(shù)據(jù)塊號是否合法對象數(shù)組中每個元素中的數(shù)據(jù)各行各列是否相同否否提示出錯原因是否是Err o r 1 m + 16Err o r 1 =m + 1是否2是是否3是否4是 圖 4(b) EVENODD譯碼流程圖 圖 4(c) EVENODD譯碼流程圖 i co rectOb j . len g thg etC o lu m n Data ( p ictu reI n co m p [] , in t )獲取該對象數(shù)組中每個元素第 i 列的數(shù)據(jù)并組成一個新的數(shù)組存放在( d atacach e int [][] ) 中horiExclusive _ OR ( int [][] )根據(jù)公式 ( 2 ) 單獨處理一個數(shù)組生成對象數(shù)組中的第 i 列水平校驗數(shù)據(jù)diagExclusive _ OR ( int [][] , S )根據(jù)公式 ( 1 ) 獲得 S ; 根據(jù)公式 ( 3 )單獨處理一個數(shù)組生成對象數(shù)組中的第 i列對角校驗數(shù)據(jù)i ++定義指示對象數(shù)組大小的變量 int i = 01將正確數(shù)據(jù)塊的的數(shù)據(jù)重新組合成一個對象數(shù)組 co rectOb j將修復(fù)的數(shù)據(jù)存入相應(yīng)對象否是結(jié)束結(jié)束i co rectO b j . len g thg etC o lu m n D ata ( p ictu reInco m p [] , in t )獲取該對象數(shù)組中每
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1