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

正文內(nèi)容

視頻數(shù)據(jù)傳輸?shù)拈_發(fā)與實(shí)現(xiàn)—免費(fèi)計(jì)算機(jī)畢業(yè)設(shè)計(jì)論文-閱讀頁

2024-12-23 15:20本頁面
  

【正文】 的部分宏塊可以利用幀間預(yù)測,每個(gè)預(yù)測塊至多可使用一 個(gè)運(yùn)動補(bǔ)償預(yù)測信號。 ? S P 分片 :稱為切換 P 分片,能在不同編碼圖像之間有效地切換。 圖 5 所示的是一個(gè)編碼分片的語法結(jié)構(gòu)。分片的數(shù)據(jù)部分包括一組編碼宏塊,也可能包括 SKIP 宏塊 (跳過不進(jìn)行編碼的宏塊 ).而每個(gè)編碼宏塊則包括一組頭信息元素和編碼殘差數(shù)據(jù) 。區(qū)別于以往標(biāo)準(zhǔn), 標(biāo)準(zhǔn)采用了許多新技術(shù) [15] 1) 亮 度 分量采用 4 種 16x16 和 9 種 4x4 幀內(nèi)預(yù)測模式,色度分量采用 4 種 8x 8 幀內(nèi)預(yù)測模式。 3) 與整像素精度的空間預(yù)測相比, 1/4 或 1/8 像素精度的運(yùn)動矢量可以節(jié)約大于 20 %的碼 率。 5) 采用多參考幀進(jìn)行幀間預(yù)測,比單參考幀編碼器節(jié)省 5%1039。 6) 基本檔次采用上下文自適應(yīng)變長編碼對變換系數(shù)進(jìn)行嫡編碼,而對其它數(shù)據(jù)則采用定長 編碼或指數(shù)哥倫布變長編碼。 幀內(nèi)預(yù)側(cè) 幀內(nèi)預(yù)測包括 Intra16x16, Intra4x4, Iatra8x8 以及 I PCM 四種編碼模式。Intral6x 16 適合對平滑區(qū)域進(jìn)行編碼, Intra4x4 適合對紋理復(fù)雜的區(qū)域進(jìn)行編碼。 1. 4x4 亮度預(yù)側(cè) 如圖 6 所示,當(dāng)選擇 Intra4x4 模式時(shí),通過相鄰的樣值 AQ 預(yù)測每個(gè) 4x4 子塊的樣值ap. Intra4x4 有 9 種預(yù)測模式,除了 DC 預(yù)測模式 (通過一個(gè)值預(yù)測整個(gè) 4x4 子塊 ),可以選擇8 個(gè)方向預(yù)測模式,這些模式適合預(yù)測具有方向結(jié)構(gòu)的圖像內(nèi)容。模式一的預(yù)測方法類似,唯一的不同是通過左邊的樣值 (I,J, K ,L ) 向右水平拷貝。 圖 6 Intra4x4 預(yù)測 2. 16x16 亮度預(yù)側(cè) 如圖 7所示, Intral6x16 對整個(gè)宏塊進(jìn)行預(yù)測,它包括 4種預(yù)測模式。模式 3 為平面預(yù)測,它用一個(gè)線性“平面”函數(shù)對上邊和左邊的樣值進(jìn)行插值,這種預(yù)測方法對于變化平緩的亮度區(qū)域效果更好。這四種模式采用了與 16x16 亮度預(yù)測模式相同的預(yù)測方法,只是模式的編號不同。 圖 7 16X16 幀內(nèi)預(yù)測模式 幀間預(yù)測 在基本檔次中,幀間編碼對已編碼的視頻幀進(jìn)行運(yùn)動補(bǔ)償,建立預(yù)測模型。(在亮度分量中是 1/4像素精度)。盡管如此, 采用了 4x4 整數(shù)變換,它具有 DCT (Discrete Cosine Transform)變換相似的特性,可以代替 4x4 DCT變換,變換矩陣如公式 25 所示。在編碼端,過程包括前向變換, Z 字形掃描,量化,然后進(jìn)行嫡編碼,解碼端的過程與編碼端相反 . 因?yàn)?Intr a16x16 和色度幀內(nèi)預(yù)測模式適合對平滑區(qū)域進(jìn)行編碼,所以 DC 系數(shù)需要進(jìn)行第二次變換。色度分量的處理過程如圖 215 所示,大塊中的小塊表示 DC 系數(shù),一個(gè)宏塊有 4 個(gè) 4x4 的色度分量子塊,每個(gè)子塊有一個(gè) DC 系數(shù)。因此,對于非常平滑的區(qū)域,使用覆蓋整個(gè) 8x8 塊的變化帶來的重建誤差是只使用 4x4 變換的一半。 使用小塊變換有很多原因 : ? 小塊變換改進(jìn)了幀間和幀內(nèi)的預(yù)測效率, 4x4 變換能夠有效地去除統(tǒng)計(jì)上 的 相 關(guān) 性,使殘差信號具有更少的空間相關(guān)性。 ? 小塊變換要求更少的計(jì)算量和更短的處理字長。 64 標(biāo) 準(zhǔn)支持 52 個(gè) Qslep 值,可以通過量化參數(shù) QP 進(jìn)行索引。大范圍的量化步長使得編碼器 在碼率和質(zhì)量之間可以進(jìn)行精度和靈活性的均衡。這兩個(gè)參數(shù)的范圍都是 051,在缺省的情況下,色度參數(shù) QPC 值由亮度參數(shù)值 QPY 推導(dǎo)得到,因此當(dāng) QPY30 時(shí), QPC 小于 QPY。 量化后的變換系數(shù)需要進(jìn)行 Z 字形掃描,然后再進(jìn)行嫡編碼。 中的所有反向變換操作可以通過 16 比特整數(shù)的加法和移位實(shí)現(xiàn)。 熵編碼 基本檔次支持 CAVLC 和指數(shù)哥倫布編碼 (ExponenitalG olombC odes). 指數(shù)哥倫布編碼 指數(shù)哥倫布碼是具有規(guī)則結(jié)構(gòu)的變長碼。第一個(gè)碼字沒有引導(dǎo)的零或尾 INFO。每個(gè)指數(shù)哥倫布碼的長度是 (2M+1)位,編碼器可以通過索引號 code num 來構(gòu)造每個(gè)碼字 : 一個(gè)碼字的解碼過程如下 : ? 讀入緊跟一個(gè) 1的 M個(gè)引導(dǎo)的零。 ? Code_num = 2m+INFO1 (對于碼字 0. INFO 和 M 都是零 ) 2. 基于上下文的自適應(yīng)變長編碼 該方法用于對以 Z字形順序掃描得到的 4X4(或 2x2)殘差塊變換系數(shù)進(jìn)行 編碼 .在設(shè)計(jì) CAVLC時(shí),利用了一些 4X4量化塊的特點(diǎn) : ? 預(yù)測、變換和量化之后,塊是典型的稀疏矩陣 (包含許多零 )。 ? 經(jīng)過 Z字形掃描之后,最后的非零系數(shù)經(jīng)常是序列, CAVLC以緊湊的方式表示這些高頻的系數(shù) (TrailingOnes) ? 相鄰塊非零系數(shù)的個(gè)數(shù)有相關(guān)性。 ? 在重排數(shù)組的起始位置 (直流系數(shù)附近 ),非零系數(shù)的級別 (幅度 )趨向于增大 ,而在高頻部分趨向于減小。 CA VL C 對變換系數(shù)塊進(jìn)行編碼的過程如下 : 1) 對系數(shù)個(gè)數(shù)及 trailing_ones( coef token)進(jìn)行編碼 第一個(gè) V LC,coeftoken對非零系數(shù)的總數(shù) (TotalCoefs)以及 Trailingfl(T railingOnes)的數(shù)目進(jìn)行編碼。 對一個(gè) 4 x4塊 coef token的編碼有 4種查表選擇,即三種變長碼表和一種定長碼表。參數(shù) nC計(jì)算如下 :如果左上塊 nB和 nA都是可 用的 (即在同一個(gè)編碼分片內(nèi) ),則 nC = round((nA十 nB)/2)。如果僅有左塊可用,則 nC=nA。 2) 每個(gè) TrailingOnes符號的編碼 coeff_token用于對每個(gè) TrailingOnes進(jìn)行標(biāo)記。 3) 剩 余 非零系數(shù)幅度值的編碼 對塊 中 剩 余的非零系數(shù),按照以下所述方法,對其幅度值和符號進(jìn)行編碼,以反向的順序開始進(jìn)行編碼,從最高頻開 始一直到直流系數(shù)結(jié)束。后綴的長度 (suf ixTength)可以從 0至 6位,但前綴的長度是自適應(yīng)的,取決于每個(gè)連續(xù)的已編碼系數(shù)值的幅度。后綴長度的選擇是自適應(yīng)的,選擇過程如下 : ? 將后綴長度初始化為 0(除非有 10個(gè)以上的非零系數(shù)和 3個(gè)以下的 TrailingOnes,在此種情況下初始化為 1)。 ? 如果該系數(shù)的幅度值大 于一個(gè)預(yù)定的閩值,則增加后綴長度。 4) 在最后一個(gè)系數(shù)前對零總數(shù)的編碼 在重排數(shù)組中,最高非零系數(shù)之前的所有零用一個(gè) VLC編碼。 5) 對每個(gè)零游程的編碼 以反序?qū)γ總€(gè)非零系數(shù)之前零的個(gè)數(shù) (run befoer)進(jìn)行編碼。如果有 6個(gè)剩下的零需要編碼,則 run before可以取 7個(gè)值(06),因此相應(yīng)需要大一些的 VLC表。 和 包含了處理視頻捕獲的代碼。 ( 1) :包括了執(zhí)行視頻捕獲的函數(shù),它給 AVI 文件 I/O和視頻、音頻設(shè)備驅(qū)動程序提供了一個(gè)高級接口。 ( 3) :此驅(qū)動程序包括對 VFW 的 MCI 命令的解釋器 ( 4) :支持由標(biāo)準(zhǔn)多媒體 I/O(MMIO)函數(shù)提供的更高的命令來訪問 AVI 文件。本程序?qū)⒉东@代碼封裝于 和 中,下面將針對具體的代碼說明程序的實(shí)現(xiàn)。 之后將此實(shí)例與顯示對話框相綁定。 接下來初始化視頻捕獲的實(shí)例。如果返回 TRUE則表示初始化成 功,實(shí)現(xiàn)代碼如下: vidcapInitialize()。 在連接成功之后,程序就可以獲取到上文所述格式的位圖信息。獲取位圖信息的代碼如下: 17 thism_bmpinfo=amp。 在完成以上工作之后,程序就可以開始啟動視頻捕獲并顯示了。 當(dāng)視頻捕獲 啟動之后,在 OnCaptureVideo 函數(shù)中將接收到含有視頻幀的信息,在這里調(diào)用視頻顯示函數(shù)將本地視頻顯示出來。 銷毀實(shí)例 vidcapDestroy()。在視頻顯示這一部分要完成的功能就是把這些視頻幀通 過 windows 的 API函數(shù)進(jìn)行顯示。直接寫入視頻內(nèi)存,性能較之其他 API 函數(shù)更好。 其次,調(diào)用開始繪制函數(shù),開始視頻幀的顯示 ::DrawDibBegin(hdib,...)。 最后,關(guān)閉繪圖的設(shè)備上下文,并釋放內(nèi)存。 ::DrawDibClose(hdib)。效果如下圖所示: 18 圖 9 客戶端視頻采集 視頻的編解碼 在本系統(tǒng)中視頻的解碼是由 編碼庫來完成的,在本節(jié)中將重點(diǎn)講述 編碼庫與 解碼器的使用方法: ( 1) 編碼庫 ? 初始化編碼壓縮器 CParam cparams。 InitH263Encoder(amp。 ? 將 RGB 轉(zhuǎn)換為 YUV420 InitLookupTable()。 ? 在數(shù) 據(jù)壓縮前調(diào)用下述函數(shù),以確保數(shù)據(jù)格式是 YUV420 的 ConvertRGB2YUV(IMAGE_WIDTH,IMAGE_HEIGHT,data,yuv)。 = CPARAM_INTRA。 =yuv。cparams, amp。 ( 2) ? 初始化解碼器 InitH263Decoder()。 ? 退出解碼器操作 ExitH263Decoder()。在選擇傳輸網(wǎng)絡(luò)時(shí),應(yīng)考慮以下幾個(gè)因素 : 數(shù)字視頻信號雖然已經(jīng)經(jīng)過壓縮,但數(shù)據(jù)量還是很大,特別是當(dāng)幾路視頻信號同時(shí)在網(wǎng)絡(luò)上傳輸時(shí),大量的數(shù)據(jù)傳輸會使得傳輸網(wǎng)絡(luò)變得擁擠,而這會必然造成數(shù)據(jù)的延遲及丟失。 本系統(tǒng)要求實(shí)現(xiàn)遠(yuǎn)程實(shí)時(shí)監(jiān)控,即遠(yuǎn)程監(jiān)控現(xiàn)場的情景要實(shí)時(shí)地現(xiàn)實(shí)在監(jiān)控服務(wù)器的主機(jī)上,這就要求傳輸網(wǎng)絡(luò)的傳輸速度要很快。 組播 ( 1)組播的“根” 組播從概念上來講分為兩部分:控制部分和數(shù)據(jù)部分。而數(shù)據(jù)部分決定了數(shù)據(jù)的傳輸方式。對于有根的控制層,存在著一個(gè) root 和若干個(gè)leaf. root 負(fù)責(zé)管理這個(gè)組播組,只有他能邀請一個(gè) leaf 加入一個(gè)組播組( ATM 就是有根控制的一個(gè)典型的例子)。對于有根數(shù)據(jù)層,從 root 發(fā)出的數(shù)據(jù)能到達(dá)每一個(gè) leaf,而從 leaf 發(fā)出的數(shù)據(jù)只能到達(dá) ,每一個(gè) leaf 發(fā)出的數(shù)據(jù)能到達(dá)組播組中的每一個(gè) leaf(甚至包括他自己)。 ( 2) IP 組播地址 IP 組播通信需要一個(gè)特殊的組播地址 .IP 組播地址是一組 D 類 IP 地址,范圍從 到 。 到 的地址最好不要用,因?yàn)樗麄兇蠖嗍菫榱颂厥?的目的保持的(比如 IGMP 協(xié)議) ( 3) IGMP 協(xié)議 IGMP(inter 網(wǎng)關(guān)管理協(xié)議 )是 IP 組播的基礎(chǔ) .在 IP 協(xié)議出現(xiàn)以后,為了加入對組播的支持, IGMP 產(chǎn)生了。假如不同子網(wǎng)內(nèi)的 A,B 要進(jìn)行組播通信,那么,位與 A,B 之間的所有路由器必須都要支持 IGMP 協(xié)議,否則 A,B 之間不能進(jìn)行通信。如果有的話,終端就會回應(yīng)一條 IGMP 消息,路由器則繼續(xù)轉(zhuǎn)發(fā)這個(gè)組播組的數(shù)據(jù)。在 IGMP 第二版中,一個(gè)終端推出組播組以后,會 向路由器發(fā)送一個(gè)推出消息,路由器也會通過這個(gè)消息來判斷是否還要繼續(xù)轉(zhuǎn)發(fā)關(guān)于這個(gè)組 20 播組 的數(shù)據(jù)了。為了方便視頻的傳輸,在程序中封裝了一個(gè) Dsocket 類,該類負(fù)責(zé)完成有關(guān)視頻傳輸?shù)乃泄ぷ鳌? char localname[200]。 static char remoteaddress[500]。 static unsigned char data[2021],vdata[30000],adata[5000]。 // Operations public: DSocket()。 21 void CreateSocket(int port,int type)。 void OnReceive(int errcode)。 void SendVideoData(unsigned char *data,int length)。 }。在這里 就不再重復(fù),以免累贅。 5.地理信息系統(tǒng)的實(shí)現(xiàn) GIS 空間數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì) 地理數(shù)據(jù)模型是對現(xiàn)實(shí)世界的一種抽象,并利用一系列數(shù)據(jù)對象來支持地圖的顯示、查詢、編輯和分析。如何有效地組織并管理空間數(shù)據(jù),建立一個(gè)更有效的空間數(shù)據(jù)結(jié)構(gòu)模型,一直是 GIS 領(lǐng)域的主要研究方向之一。面向?qū)ο蟮姆椒閿?shù)據(jù)結(jié)構(gòu)的建立提供了四種數(shù)據(jù)抽象技術(shù) (分類、概括、聯(lián)合、聚集 )和兩種數(shù)據(jù)抽象工具 (繼承、傳播 ),利用這幾種技術(shù)構(gòu)造的數(shù)據(jù)結(jié)構(gòu)要比傳統(tǒng)的數(shù)據(jù)結(jié)構(gòu)豐富得多,對于空間數(shù)據(jù)的表示是一種理想的手段。 面向?qū)ο蟮臄?shù)據(jù)模型通過定義用戶自己的對象類型,定義拓?fù)涞?、空間的和全局的聯(lián)系,以及獲取這些對象 相互之間的關(guān)系等方法使用戶能更自然的描述特征。 (1) 類 (Class)和對象 (Object) 現(xiàn)實(shí)世界中都是把很多物體當(dāng)作整體來看待的,在 GIs 應(yīng)用中也應(yīng)該采用 這種思想。對象與對象之間可以交互 :具有共同 屬性的多個(gè)對象抽象為類,對象可以保存自己的狀態(tài) (屬性 )。 (2) 封 裝 (Encapsulatico) 對象的所有信息被隱藏封裝起來 。 GIs 在使用數(shù)據(jù)對象時(shí)隱藏了數(shù)據(jù)對象內(nèi)部的細(xì)節(jié),只提供 了一個(gè)標(biāo)準(zhǔn)的程序接口。
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1