欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

對(duì)視頻信號(hào)進(jìn)行編碼和解碼的方法和裝置的制作方法

文檔序號(hào):7582620閱讀:228來(lái)源:國(guó)知局
專利名稱:對(duì)視頻信號(hào)進(jìn)行編碼和解碼的方法和裝置的制作方法
技術(shù)領(lǐng)域
本發(fā)明一般涉及視頻通信,具體地說(shuō),涉及視頻圖像的壓縮和解壓縮。
由于現(xiàn)有電話網(wǎng)絡(luò)固有的帶寬限制,大多數(shù)商業(yè)用和家庭用的可視電話和電視會(huì)議設(shè)備要求很高的壓縮比率。為了滿足這種要求,開(kāi)發(fā)了H.263低比特率視頻通信國(guó)際標(biāo)準(zhǔn)。該標(biāo)準(zhǔn)很快就被視頻工業(yè)采用。H.263國(guó)際標(biāo)準(zhǔn)的優(yōu)點(diǎn)包括一種稱為先行預(yù)測(cè)模式(APM)的可選技術(shù)的實(shí)現(xiàn)。通過(guò)消除運(yùn)動(dòng)估計(jì)帶來(lái)的非自然信號(hào)(artifact),APM明顯地改善了視頻圖象。APM的缺點(diǎn)是用硬件實(shí)現(xiàn)很困難而且效率低。因此,先行預(yù)測(cè)模式的首次實(shí)現(xiàn)是僅由軟件來(lái)實(shí)現(xiàn)的。
壓縮視頻的一種H.263技術(shù)是采用運(yùn)動(dòng)估計(jì)。運(yùn)動(dòng)估計(jì)通過(guò)將運(yùn)動(dòng)矢量而不是真正的象素送給解碼器來(lái)處理視頻。解碼器接收運(yùn)動(dòng)矢量并通過(guò)訪問(wèn)運(yùn)動(dòng)矢量所指向的數(shù)據(jù)塊由上一個(gè)解碼的幀生成當(dāng)前幀。H.263APM模式中,傳送一個(gè)運(yùn)動(dòng)矢量相當(dāng)于傳送一個(gè)8×8的象素塊。APM選擇要求代表每個(gè)8×8塊的運(yùn)動(dòng)矢量與那些代表四周塊的矢量平均。這樣可以減少由運(yùn)動(dòng)估計(jì)處理導(dǎo)致的分塊非自然信號(hào)。不幸的是,出于幾種原因從周圍的宏塊平均運(yùn)動(dòng)矢量需要大量的內(nèi)存和硬件。首先,從周圍的塊來(lái)取得運(yùn)動(dòng)矢量需要在內(nèi)存中存儲(chǔ)大量的運(yùn)動(dòng)矢量。要取得當(dāng)前塊的運(yùn)動(dòng)矢量需要存儲(chǔ)整整一行的運(yùn)動(dòng)矢量,這很耗費(fèi)內(nèi)存。第二,H.263標(biāo)準(zhǔn)定義要求APM模式為兩個(gè)獨(dú)立功能存儲(chǔ)和檢索運(yùn)動(dòng)矢量重疊塊運(yùn)動(dòng)補(bǔ)償(OBMC)和預(yù)測(cè)值計(jì)算。這些功能不能輕易地結(jié)合起來(lái)是因?yàn)镺BMC功能滯后預(yù)測(cè)器功能一個(gè)宏塊的解碼時(shí)間,這就要求這些功能在不同的時(shí)間幀里操作。第三,OBMC和預(yù)測(cè)值計(jì)算各要求四種獨(dú)立的地址方式。因此要求有八種獨(dú)立的尋址方式。但是,沒(méi)有一種尋址方式是線性順序,也沒(méi)有一種尋址方式是容易編址的任何其它方式。
由于上述的問(wèn)題,很難設(shè)計(jì)出可以高效地實(shí)現(xiàn)由H.263標(biāo)準(zhǔn)定義的APM模式的硬件。用軟件來(lái)實(shí)現(xiàn)APM模式的優(yōu)越性在于可以獲得實(shí)現(xiàn)這個(gè)功能所要求的大量的內(nèi)存和系統(tǒng)資源。但是,用軟件實(shí)現(xiàn)運(yùn)行速度慢,比起硬件實(shí)現(xiàn)降低了幀速率和圖像質(zhì)量。


圖1以方框圖的形式示出了使用本發(fā)明的一個(gè)視頻通信系統(tǒng)。
圖2以方框圖的形式說(shuō)明了根據(jù)本發(fā)明的視頻編碼器。
圖3以方框圖的形式說(shuō)明了根據(jù)本發(fā)明的圖2的運(yùn)動(dòng)矢量存儲(chǔ)和取得的電路圖。
圖4以透視圖的形式說(shuō)明了一個(gè)公用中間格式大小幀的一行的宏塊的布局。
圖5說(shuō)明了符合H.263標(biāo)準(zhǔn)的預(yù)測(cè)值計(jì)算用的運(yùn)動(dòng)矢量檢索模式。
圖6說(shuō)明符合H.263標(biāo)準(zhǔn)的OBMC功能用的運(yùn)動(dòng)矢量檢索模式。
圖7說(shuō)明圖3SRAM數(shù)組的內(nèi)存分配。
圖8以方框圖形式說(shuō)明了根據(jù)本發(fā)明的在圖1所示的系統(tǒng)中使用的視頻解碼器的框圖。
圖9以框圖的形式說(shuō)明圖8所示的解碼功能的運(yùn)動(dòng)矢量存儲(chǔ)和檢索的電路圖。
圖1所示為依照本發(fā)明的視頻編碼解碼器裝置的框圖。本發(fā)明克服了上述的問(wèn)題,從而允許用硅來(lái)高效地實(shí)現(xiàn)APM。視頻A-D轉(zhuǎn)換器和解碼器12有一個(gè)用于接收模擬視頻信號(hào)的輸入端,用于產(chǎn)生422視頻格式的信號(hào)的輸出端。422信號(hào)連接到視頻預(yù)處理器的一個(gè)輸入端,用預(yù)處理器產(chǎn)生420視頻格式的信號(hào)。視頻預(yù)處理器14的一個(gè)輸出端連接到視頻編碼器16的一個(gè)輸入端。視頻編碼器16將在圖2中進(jìn)一步詳細(xì)說(shuō)明。視頻編碼器16給輸入/輸出(I/O)接口電路18提供一個(gè)壓縮視頻位流。I/O接口18通過(guò)控制、地址、數(shù)據(jù)總線與信號(hào)處理器18相連。I/O接口18的功能是為壓縮視頻位流和信號(hào)處理器20中所使用的特定類型的信號(hào)處理器提供接口。I/O接口18還與視頻解碼器22的一個(gè)輸入端相連,為其提供壓縮的視頻位流。視頻解碼器22的一個(gè)輸出端與后處理器24的一個(gè)輸入端相連。視頻解碼器22的輸出是420視頻格式。后處理器24的一個(gè)輸出端以422的視頻格式連到視頻D-A轉(zhuǎn)換器和編碼器26。視頻D-A轉(zhuǎn)換器和編碼器26產(chǎn)生一個(gè)模擬視頻信號(hào)的輸出。圖中還有直接內(nèi)存訪問(wèn)(DMA)/動(dòng)態(tài)隨機(jī)訪問(wèn)內(nèi)存(DRAM)接口電路28。DMA/DRAM接口電路28通過(guò)內(nèi)部總線32分別連接到視頻預(yù)處理器14,視頻編碼器16,視頻解碼器22和后處理器24。DMA/DRAM接口電路28通過(guò)控制、地址和數(shù)據(jù)總線與DRAM30相連接。視頻編碼解碼器10的功能是接收一個(gè)模擬視頻信號(hào),通過(guò)視頻A-D轉(zhuǎn)換器和解碼器12和視頻預(yù)處理器14將其轉(zhuǎn)換為兩種不同的視頻格式,提供一個(gè)420信號(hào)給視頻編碼器,該視頻編碼器將信號(hào)壓縮為壓縮的視頻位流。壓縮的視頻位流送到信號(hào)處理器20進(jìn)行處理,信號(hào)預(yù)處理器20就象一個(gè)主機(jī)將壓縮的視頻位流提供給發(fā)送頻道。根據(jù)所使用頻道的類型,信號(hào)處理器可能把壓縮視頻信號(hào)轉(zhuǎn)換為模擬格式或保持其數(shù)據(jù)格式。I/O接口18也提供壓縮視頻位流給視頻解碼器22,該壓縮視頻位流是通過(guò)信號(hào)處理器20從頻道接收到的。視頻解碼器22將視頻位流解壓縮為420視頻格式交由后處理器24使用。后處理器24將420視頻格式轉(zhuǎn)換為視頻D/A轉(zhuǎn)換器26使用的422格式。視頻D/A轉(zhuǎn)換器提供一個(gè)可由傳統(tǒng)的電視或視頻監(jiān)視器接收的模擬輸出。視頻編碼解碼器10的構(gòu)成如圖所示是很傳統(tǒng)的。換句話說(shuō),用現(xiàn)有的集成電路產(chǎn)品可以實(shí)現(xiàn)視頻A-D轉(zhuǎn)換器和解碼器12,視頻預(yù)處理器14,后處理器24和視頻D-A轉(zhuǎn)換器和編碼器26。但是,應(yīng)用不同視頻編碼器16和視頻解碼器22的實(shí)現(xiàn)和效率也將不同。本發(fā)明涉及視頻編碼器16和視頻解碼器22的特殊實(shí)現(xiàn)方法。
圖2是圖1的視頻編碼器16的詳細(xì)框圖。視頻編碼器16一般包括一個(gè)運(yùn)動(dòng)估計(jì)器電路36,該電路有一個(gè)接收420視頻格式信號(hào)的輸入端。運(yùn)動(dòng)估計(jì)器36提供很多運(yùn)動(dòng)矢量給運(yùn)動(dòng)矢量存儲(chǔ)和檢索模塊38。模塊38的一個(gè)輸出端與運(yùn)動(dòng)補(bǔ)償和位移幀差電路42的一個(gè)輸入端相連接。運(yùn)動(dòng)補(bǔ)償和位移幀差(displaced frame difference)電路42的一個(gè)輸出端連接到離散余弦變換和反離散余弦變換(IDT/DCT)電路44或模塊的一個(gè)輸入端。一般來(lái)說(shuō),IDT/DCT電路44基于壓縮/解壓縮算法(例如小波(wavelet)或離散余弦變換)來(lái)實(shí)施變換。離散余弦變換和反DCT電路44的一個(gè)輸出端連接到位流解碼器46的一個(gè)輸入端,位流解碼器46產(chǎn)生壓縮的視頻輸出位流。比率控制電路(rate control circuit)48通過(guò)圖1中也示出的內(nèi)部總線32,分別連接到運(yùn)動(dòng)估計(jì)器36、運(yùn)動(dòng)補(bǔ)償和位移幀差電路42和離散余弦變換和反DCT電路44。
在工作中,視頻編碼器16的作用是根據(jù)上一個(gè)象素幀的信息對(duì)當(dāng)前幀進(jìn)行運(yùn)動(dòng)估計(jì)。運(yùn)動(dòng)估計(jì)器36產(chǎn)生多個(gè)運(yùn)動(dòng)矢量。運(yùn)動(dòng)矢量表示在前面幀和當(dāng)前幀之間的8×8象素塊的位移。運(yùn)動(dòng)矢量存儲(chǔ)和檢索模塊38接收運(yùn)動(dòng)矢量。正如將在圖3中詳細(xì)說(shuō)明的那樣,模塊38的功能是檢索和存儲(chǔ)用于視頻標(biāo)準(zhǔn)如H.263國(guó)際標(biāo)準(zhǔn)中的先行預(yù)測(cè)模式所要求的運(yùn)動(dòng)矢量。一旦模塊38檢索和存儲(chǔ)了這樣的運(yùn)動(dòng)矢量。模塊38將在它的輸出端產(chǎn)生兩種運(yùn)動(dòng)矢量給運(yùn)動(dòng)補(bǔ)償或位移幀差電路42。第一種運(yùn)動(dòng)矢量用于重疊塊運(yùn)動(dòng)補(bǔ)償。第二種運(yùn)動(dòng)矢量用于重建前一幀和運(yùn)動(dòng)補(bǔ)償。運(yùn)動(dòng)補(bǔ)償和位移幀差電路42接收這兩種運(yùn)動(dòng)矢量并完成兩個(gè)功能位移幀差和運(yùn)動(dòng)補(bǔ)償。運(yùn)動(dòng)補(bǔ)償功能使用上述的兩種運(yùn)動(dòng)矢量重復(fù)遠(yuǎn)程解碼器的解碼。運(yùn)動(dòng)補(bǔ)償功能通過(guò)總線32為運(yùn)動(dòng)估計(jì)器36提供一個(gè)重建參考幀。這個(gè)幀也將被引用為前一幀或重建幀,是將要被遠(yuǎn)程解碼器解碼的幀的精確復(fù)制。當(dāng)視頻編碼器編碼下一幀時(shí),它將被運(yùn)動(dòng)估計(jì)器36用于運(yùn)動(dòng)估計(jì)的參考幀。位移幀差功能從原始(參考)幀中減去運(yùn)動(dòng)估計(jì)幀并提供其差給離散余弦變換和反DCT電路44。離散余弦變換和反DCT電路44基于壓縮函數(shù)進(jìn)行有損變換(lossy transform)。DCT/IDCT 44的輸出和來(lái)自運(yùn)動(dòng)估計(jì)器36的運(yùn)動(dòng)矢量提供給位流編碼器46。位流編碼器46將數(shù)據(jù)排列為H.263標(biāo)準(zhǔn)所要求的格式,并產(chǎn)生壓縮視頻位流輸出到頻道。除了通過(guò)頻道被送出,DCT/IDCT電路44的壓縮的輸出通過(guò)該DCT/IDCT電路44的反變換功能得以解壓縮。解壓縮后的輸出,通過(guò)總線32,送入到同一個(gè)運(yùn)動(dòng)補(bǔ)償和位移差電路42。這個(gè)信息將由位移幀差功能用于撤消(undo)它的上一次減法并重新產(chǎn)生一個(gè)運(yùn)動(dòng)估計(jì)器36的參考幀,該幀正是在頻道另一端的遠(yuǎn)程解碼器將要解碼的那一幀。
圖3所示為依照本發(fā)明的圖2的運(yùn)動(dòng)矢量存儲(chǔ)和檢索模塊38。運(yùn)動(dòng)矢量寄存器50的輸出提供當(dāng)前的運(yùn)動(dòng)矢量給SRAM運(yùn)動(dòng)矢量數(shù)組52,該數(shù)組一般是指一組存儲(chǔ)運(yùn)動(dòng)矢量的存儲(chǔ)元素?;镜刂酚?jì)數(shù)器54用于產(chǎn)生一個(gè)基址,與地址產(chǎn)生器56相連接。地址產(chǎn)生器56的第二個(gè)輸入端用于接收來(lái)自查找表58的偏移值。查找表58的第一個(gè)輸入端用于接收塊號(hào)。塊號(hào)是在大多數(shù)視頻標(biāo)準(zhǔn)中定義的宏塊中的4個(gè)可能的塊之一。查找表58的第二個(gè)輸入端用于OBMC/預(yù)測(cè)模式信號(hào),該信號(hào)用于實(shí)現(xiàn)H.263國(guó)際標(biāo)準(zhǔn)所必需的OBMC或預(yù)測(cè)值計(jì)算模式。查找表58的第三個(gè)輸入端用于選擇需要的運(yùn)動(dòng)矢量(左,上,右上,右,下),這將在圖5和圖6中進(jìn)一步說(shuō)明。運(yùn)動(dòng)矢量的選擇一般是由一個(gè)兩位的狀態(tài)機(jī)(未圖示)來(lái)產(chǎn)生。狀態(tài)機(jī)在4種可能的選擇(左,上,右上,右,下)之間進(jìn)行循環(huán)并在開(kāi)始一個(gè)新宏塊的編碼時(shí)復(fù)位回到開(kāi)始。模加法器57的第一個(gè)輸入端從查找表58接收一個(gè)偏移值,第三個(gè)輸入端從基址計(jì)數(shù)器54接收一個(gè)基址,它的輸出端產(chǎn)生一個(gè)地址,連接到SRAM運(yùn)動(dòng)矢量數(shù)組52上。SRAM數(shù)組52的輸出端提供選中的運(yùn)動(dòng)矢量給多路復(fù)用器電路60。多路復(fù)用器60的第一個(gè)輸出端與預(yù)測(cè)值計(jì)算器電路62的一個(gè)輸入端相連接。多路復(fù)用器60的功能是響應(yīng)OBMC/預(yù)測(cè)模式控制信號(hào),該信號(hào)也用于從查找表58中選擇正確的偏移量。多路復(fù)用器60的第二個(gè)輸出端與運(yùn)動(dòng)補(bǔ)償單元42的一個(gè)輸入端相連接。運(yùn)動(dòng)補(bǔ)償單元42的輸出端提供信號(hào)給圖2中所示的DCT/IDCT電路44。在說(shuō)明運(yùn)動(dòng)矢量存儲(chǔ)和檢索模塊38之前,先來(lái)參看一下圖4到圖6。
圖4是在一個(gè)共用中間格式(CIF)類型的視頻幀中的一行的宏塊的布局。宏塊布局中有多行宏塊。為了便于說(shuō)明,只詳細(xì)列出一行宏塊。每一行有22個(gè)宏塊,分別標(biāo)識(shí)為C0到C21。在圖中,宏塊C0按時(shí)間代表當(dāng)前宏塊,宏塊C0的緊上方是宏塊C22,在時(shí)間域里,宏塊C22是過(guò)去的第22個(gè)宏塊。為了盡可能地節(jié)省硬件和內(nèi)存,必須共享和結(jié)合OBMC和預(yù)測(cè)器功能使用的內(nèi)存。OBMC功能必須比預(yù)測(cè)器功能滯后一個(gè)宏塊的時(shí)間。這個(gè)因素致使OBMC功能在宏塊C-1執(zhí)行(存儲(chǔ)和檢索運(yùn)動(dòng)矢量),而預(yù)測(cè)器功能則在宏塊C0執(zhí)行。必須將OBMC功能滯后在宏塊C1是因?yàn)镺BMC要求檢查當(dāng)前OBMC功能執(zhí)行的宏塊右邊的運(yùn)動(dòng)矢量(這將在圖6中進(jìn)一步說(shuō)明)。如果OBMC功能在宏塊C0上執(zhí)行,那么“右邊”的運(yùn)動(dòng)矢量將從宏塊C+1中檢索,而該宏塊C+1是未來(lái)的一個(gè)宏塊,現(xiàn)在還不能使用。在圖5和圖6中將進(jìn)一步說(shuō)明,必須從OBMC和預(yù)測(cè)器功能的上邊的宏塊中檢索運(yùn)動(dòng)矢量。且需要注意的是,“上邊”的運(yùn)動(dòng)矢量對(duì)OBMC功能來(lái)說(shuō)是22個(gè)宏塊前處理的,而對(duì)預(yù)測(cè)器功能來(lái)說(shuō)是23個(gè)宏塊前處理的。因此,保存24個(gè)(C0到C23)宏塊是必要的。
在圖5和圖6中將用到以下術(shù)語(yǔ)大方塊是指一個(gè)16×16象素的宏塊,可劃分為4個(gè)8×8的象素塊。每個(gè)8×8象素塊都有自己的運(yùn)動(dòng)矢量。4個(gè)8×8的象素塊,在本技術(shù)領(lǐng)域通常稱為“塊”被編號(hào)為塊1,2,3和4。塊1是宏塊的左上角,塊2是右上角,塊3是左下角,塊4是右下角。處理一個(gè)宏塊是指對(duì)該宏塊進(jìn)行編碼或解碼。圖5和圖6中的術(shù)語(yǔ)C-1是指處理過(guò)的上一個(gè)宏塊。依此類推,宏塊C21是指過(guò)去處理的第21個(gè)宏塊?!癈0”是指當(dāng)前正在處理的宏塊。在圖5中需要注意是在宏塊中需要為塊1檢索的運(yùn)動(dòng)矢量是左、上、右上。左運(yùn)動(dòng)矢量來(lái)自宏塊C-1的塊2。上運(yùn)動(dòng)矢量來(lái)自宏塊C-22的塊3。右上運(yùn)動(dòng)矢量來(lái)自宏塊C-21的塊3。當(dāng)前處理宏塊的塊2的檢索模式如下左運(yùn)動(dòng)矢量是當(dāng)前被處理的宏塊(C0)中的塊1。上運(yùn)動(dòng)矢量是宏塊C-22中的塊4。右上運(yùn)動(dòng)矢量是宏塊C-21中的塊3。當(dāng)前處理的宏塊中的塊3的檢索模式也與塊1,塊2,塊3,塊4不同。當(dāng)前宏塊中的塊3的檢索模式如下左運(yùn)動(dòng)矢量是宏塊C-1中的塊4。上運(yùn)動(dòng)矢量是當(dāng)前處理的宏塊(C0)的塊1。右上運(yùn)動(dòng)矢量是當(dāng)前處理的宏塊(C0)中的塊2。對(duì)當(dāng)前處理的宏塊的塊4來(lái)說(shuō),左運(yùn)動(dòng)矢量是當(dāng)前宏塊C0中的塊3。上運(yùn)動(dòng)矢量是當(dāng)前宏塊C0中的塊1。右上運(yùn)動(dòng)矢量是當(dāng)前宏塊C0中的塊2。需要重申的是,宏塊1,2,3,4的檢索模式互不相同。這些模式定義在H.263標(biāo)準(zhǔn)中。
本發(fā)明為OBMC功能支持運(yùn)動(dòng)矢量的檢索。這個(gè)功能也是對(duì)宏塊的每一個(gè)塊都有各自的檢索模式。OBMC功能要求為宏塊中的每一個(gè)塊檢索左,上,右,下的運(yùn)動(dòng)矢量。需要重申的是,向右檢索運(yùn)動(dòng)矢量比較困難,因?yàn)楫?dāng)前宏塊右邊的運(yùn)動(dòng)矢量還未被處理。為了檢索右運(yùn)動(dòng)矢量,必須將OBMC功能在時(shí)間上滯后一個(gè)宏塊。因此OBMC功能將在宏塊C-1執(zhí)行,比預(yù)測(cè)器功能滯后一個(gè)宏塊。OBMC功能的檢索模式如下對(duì)塊1來(lái)說(shuō),左運(yùn)動(dòng)矢量是宏塊C-2的塊2。上運(yùn)動(dòng)矢量是宏塊C-23的塊3。右運(yùn)動(dòng)矢量是宏塊C-1的塊2下運(yùn)動(dòng)矢量是宏塊C-1的塊3。對(duì)當(dāng)前OBMC正在處理的宏塊中的塊2來(lái)說(shuō),左運(yùn)動(dòng)矢量是宏塊C-1中的塊1,上運(yùn)動(dòng)矢量是宏塊中的塊4。右運(yùn)動(dòng)矢量是宏塊CO中的塊1,下運(yùn)動(dòng)矢量是宏塊C-1的塊4。對(duì)OBMC功能的塊3來(lái)說(shuō),左運(yùn)動(dòng)矢量是宏塊C-2的塊4。上運(yùn)動(dòng)矢量是宏塊C-1的塊1。右運(yùn)動(dòng)矢量是宏塊C-1的塊4。下運(yùn)動(dòng)矢量是宏塊C-1的塊3。對(duì)OBMC宏塊C-1的塊4來(lái)說(shuō),左運(yùn)動(dòng)矢量是宏塊C-1的塊3。上運(yùn)動(dòng)矢量是宏塊C-1的塊2。右運(yùn)動(dòng)矢量是宏塊C0的塊3,下運(yùn)動(dòng)矢量為宏塊C-1的塊4。
參考前面的圖3,運(yùn)動(dòng)矢量存儲(chǔ)和檢索模塊38的功能如下。OBMC和預(yù)測(cè)模式的八種尋址方式的偏移量,如圖5和圖6所示,是由查找表58提供的。查找表58的輸入包括在宏塊中的編號(hào)(1,2,3,4),所需的運(yùn)動(dòng)矢量(左、右、等)及為運(yùn)動(dòng)矢量檢索選擇正確偏移的功能模式(OBMC/預(yù)測(cè))。
要實(shí)現(xiàn)的第一種模式是預(yù)測(cè)模式。為了實(shí)現(xiàn)預(yù)測(cè)模式,請(qǐng)參看圖5。圖5示出了依照H.263國(guó)際標(biāo)準(zhǔn)定義的4個(gè)宏塊組織。每個(gè)宏塊內(nèi)有四個(gè)表示8×8塊的運(yùn)動(dòng)矢量。對(duì)于預(yù)測(cè)模式。H.263國(guó)際標(biāo)準(zhǔn)要求宏塊內(nèi)的每一塊檢索左、上、右上的運(yùn)動(dòng)矢量。宏塊內(nèi)不同的塊的檢索左,上,右上運(yùn)動(dòng)矢量的檢索模式不同。為了實(shí)現(xiàn)檢索模式,計(jì)數(shù)器54為地址生成器56提供一個(gè)0到53的數(shù)字。地址生成器56對(duì)計(jì)數(shù)器的輸出乘以2以獲得一個(gè)基址。在實(shí)現(xiàn)中必須乘以2是因?yàn)槊總€(gè)數(shù)中存儲(chǔ)兩個(gè)運(yùn)動(dòng)矢量。查找表58根據(jù)塊號(hào)模式和運(yùn)動(dòng)矢量選擇生成一個(gè)偏移值。模加法器57將查找表58提供的偏移值和計(jì)數(shù)器54提供的基址相加。其和是一個(gè)地址,在與SRAM數(shù)組52通訊時(shí)作為一個(gè)指針。該地址用于依照H.263標(biāo)準(zhǔn)的檢索模式檢索左、上、右上運(yùn)動(dòng)矢量。在SRAM數(shù)組52中編址的左、上、右上運(yùn)動(dòng)矢量可通過(guò)多路復(fù)用器60(Mux)由SRAM數(shù)組52選擇性地輸出。選中的運(yùn)動(dòng)矢量提供給預(yù)測(cè)值計(jì)算器62。預(yù)測(cè)值計(jì)算器62的功能是計(jì)算選中的上、右上和左運(yùn)動(dòng)矢量的中值。計(jì)算所得的中值,即所謂的“預(yù)測(cè)值”提供給位流編碼器46。在位流編碼器46中,預(yù)測(cè)值從運(yùn)動(dòng)估計(jì)器36提供的運(yùn)動(dòng)矢量中抽取出來(lái)。其結(jié)果,在本技術(shù)領(lǐng)域稱為“差”,被送往頻道。預(yù)測(cè)值計(jì)算器62的實(shí)現(xiàn)方法廣為本技術(shù)領(lǐng)域人員所知。
在OBMC模式下,查找表58根據(jù)H.263標(biāo)準(zhǔn)OBMC的運(yùn)動(dòng)矢量檢索模式(圖6)提供一個(gè)偏移值。地址生成器56的功能與前面有關(guān)預(yù)測(cè)值計(jì)算的說(shuō)明類似,將一個(gè)地址提供給SRAM數(shù)組52,然后SRAM數(shù)組52提供選中的運(yùn)動(dòng)矢量給多路復(fù)用器60。多路復(fù)用器60提供的OBMC運(yùn)動(dòng)矢量通過(guò)多路復(fù)用器60提供給運(yùn)動(dòng)補(bǔ)償單元42。運(yùn)動(dòng)補(bǔ)償單元用OBMC運(yùn)動(dòng)矢量為運(yùn)動(dòng)估計(jì)器作成重建幀。
需要理解的是注意到不必存儲(chǔ)宏塊C-2以前的宏塊的上運(yùn)動(dòng)矢量即塊1和2,因而可以大大地節(jié)省內(nèi)存。請(qǐng)參照?qǐng)D6的塊1(OBMC功能)來(lái)理解這一點(diǎn)。從圖6可以看到最后一次使用上(T-X)運(yùn)動(dòng)矢量是在為宏塊C-1的塊1檢索左運(yùn)動(dòng)矢量的時(shí)候。因此,宏塊C-2之后只需要下半部分(B-X)運(yùn)動(dòng)矢量。這是因?yàn)闉榱双@得“上”運(yùn)動(dòng)矢量只需要當(dāng)前正在處理的宏塊上面的宏塊的下運(yùn)動(dòng)矢量。
圖7所示為一種SRAM數(shù)組52內(nèi)存分配一個(gè)例子。在圖示中,有27個(gè)半個(gè)宏塊,每半個(gè)宏塊包括宏塊的上半部分或下半部分的運(yùn)動(dòng)矢量。在內(nèi)存布局中,有24個(gè)宏塊的下半部分和3個(gè)宏塊的上半部分。宏塊的上半部分存儲(chǔ)宏塊的塊1和塊2。宏塊的下半部分存儲(chǔ)宏塊的塊3和塊4。具體說(shuō)來(lái),分配給下運(yùn)動(dòng)矢量48個(gè)地址位置,分配給上運(yùn)動(dòng)矢量6個(gè)地址位置。這種分配反映了這樣的事實(shí),下半部分矢量需要存儲(chǔ)23個(gè)宏塊時(shí)間,上半部分矢量只需存儲(chǔ)3個(gè)宏塊時(shí)間。圖7中所用的術(shù)語(yǔ)如下B0是指當(dāng)前正在被處理的宏塊,是存儲(chǔ)當(dāng)前正在被解碼的宏塊的下運(yùn)動(dòng)矢量(塊3和塊4)的地方。B-1存儲(chǔ)上一個(gè)被處理的宏塊的下運(yùn)動(dòng)矢量。同樣地,T0存儲(chǔ)當(dāng)前宏塊的上運(yùn)動(dòng)矢量(塊1和塊2),T-1存儲(chǔ)上一個(gè)被處理的宏塊的上運(yùn)動(dòng)矢量。需要特別注意的是這是一種移動(dòng)的/相對(duì)尋址方式而不是絕對(duì)尋址。B0和B-1宏塊不是象在絕對(duì)地址方式中那樣編碼在絕對(duì)地址0和絕對(duì)地址1上。還應(yīng)注意基地址總是指向B0(當(dāng)前正在處理的宏塊的下運(yùn)動(dòng)矢量)的左運(yùn)動(dòng)矢量。這與在圖3中將基地址計(jì)數(shù)器54中的值乘以2所得的基地址是完全相同的。需要特別注意的是,隨著計(jì)數(shù)器的增加,當(dāng)要開(kāi)始處理一個(gè)新的宏塊時(shí),上運(yùn)動(dòng)矢量T0將成為上運(yùn)動(dòng)矢量T-1。新的上運(yùn)動(dòng)矢量T0將覆蓋下運(yùn)動(dòng)矢量B-23。同樣地,新的下運(yùn)動(dòng)矢量B0將覆蓋舊的上運(yùn)動(dòng)矢量T-2。這樣,下運(yùn)動(dòng)矢量總是覆蓋上運(yùn)動(dòng)矢量,上運(yùn)動(dòng)矢量總是覆蓋下運(yùn)動(dòng)矢量。還需注意沿兩條不同的時(shí)間線為上和下運(yùn)動(dòng)矢量分配內(nèi)存。
下面為上述的概念提供一個(gè)例子。例子說(shuō)明如果計(jì)數(shù)器的當(dāng)前值為5,那么SRAM數(shù)組52中的基地址10就是存儲(chǔ)當(dāng)前宏塊的下運(yùn)動(dòng)矢量的地址。當(dāng)前宏塊的上運(yùn)動(dòng)矢量將總是被存儲(chǔ)在比計(jì)數(shù)器多6的地址。在本例中即為地址16。通過(guò)仔細(xì)觀察圖7的內(nèi)存分配圖我們可以找到原因。因?yàn)楫?dāng)前計(jì)數(shù)總是指向B0,T0的相對(duì)地址空間通過(guò)模加6返T0來(lái)得到。當(dāng)處理下一個(gè)宏塊而計(jì)數(shù)器增長(zhǎng)為6時(shí),每個(gè)宏塊都“長(zhǎng)了”一個(gè)宏塊的時(shí)間?;刂?0將存儲(chǔ)上一個(gè)宏塊的下運(yùn)動(dòng)矢量,而基地址12存儲(chǔ)新的宏塊的下運(yùn)動(dòng)矢量。需要特別注意的是基地址12原來(lái)存儲(chǔ)的是宏塊C-2(宏塊C-2包含上運(yùn)動(dòng)矢量T-2和下運(yùn)動(dòng)矢量B-2)的上半部分矢量。T-2運(yùn)動(dòng)矢量只需存儲(chǔ)三個(gè)宏塊的時(shí)間,此時(shí)計(jì)數(shù)器增為6,B0的下運(yùn)動(dòng)矢量B0寫到它的位置上。例子計(jì)數(shù)器值5=基地址10基地址0……4681012141618……52 B-2 B-1 B0T-2 T-1 T0B-23計(jì)數(shù)器值6=基地址12基地址0……4681012141618……52 B-3 B-2 B-1 B0T-2 T-1 T0總而言之,整個(gè)運(yùn)動(dòng)矢量存儲(chǔ)和檢索模塊38的操作可以用下面的例子來(lái)說(shuō)明如果基地計(jì)數(shù)器54的值為6,那么它指向的實(shí)際地址為12因?yàn)槊總€(gè)基地址存儲(chǔ)兩個(gè)運(yùn)動(dòng)矢量。因此,實(shí)際地址12存儲(chǔ)B0的左運(yùn)動(dòng)矢量。假設(shè)查找表58的輸入如下塊號(hào)=1,OBMC/預(yù)測(cè)模式=OBMC。那么,塊1的左,上,右和下OBMC運(yùn)動(dòng)矢量的檢索如下MV選擇 位置 LUT輸出 基地址 最終地址左 T-2+31215上 B-23 +81220右 T-1+51217下 B-1-21210
在上例中,從圖6中可以看到塊1的OBMC左運(yùn)動(dòng)矢量是宏塊C-2的右上塊,其內(nèi)存位置為T-2。根據(jù)圖7或上例可以計(jì)算偏移值。在本例中,通過(guò)模加3可以看到T-2的右運(yùn)動(dòng)矢量。同樣地,從圖6中可以看到右運(yùn)動(dòng)矢量位于內(nèi)存段T-1的右邊,上運(yùn)動(dòng)矢量位于內(nèi)存段B-23的左邊,下運(yùn)動(dòng)矢量位于內(nèi)存段B-1的左邊。
既然在已經(jīng)說(shuō)明了本發(fā)明編碼操作的裝置和方法,我們將說(shuō)明在解碼操作中使用本發(fā)明。圖1的解碼器部分包括視頻D-A轉(zhuǎn)換器和編碼器26,后處理器24和視頻解碼器22。
圖8是視頻解碼器22的詳圖。視頻位流作為輸入傳送給位流解碼器70。位流解碼器70的第一個(gè)輸出端連接到用于解碼的運(yùn)動(dòng)矢量存儲(chǔ)和檢索模塊72的一個(gè)輸入端。位流解碼器70的第二個(gè)輸出端連接到圖2所示的離散余弦變換和反DCT 44的一個(gè)輸入端。用于解碼的運(yùn)動(dòng)矢量存儲(chǔ)和檢索模塊72的一個(gè)輸出端連接到圖2所示的運(yùn)動(dòng)補(bǔ)償電路42。運(yùn)動(dòng)補(bǔ)償電路42的一個(gè)輸出端連接到組合電路加法器76的第一個(gè)輸入端。離散余弦變換和反DCT 44的一個(gè)輸出端連接到加法器76的第二個(gè)輸入端。加法器76的一個(gè)輸出端提供420視頻格式的信號(hào)。后處理器24的一個(gè)輸出端連接到視頻D/A和編碼器26的一個(gè)輸入端上。后處理器24提供422視頻格式的信號(hào)。視頻D/A和編碼器26提供與圖1所示信號(hào)相同的視頻模擬信號(hào)。
在操作中,一個(gè)數(shù)字視頻信號(hào)被輸入位流解碼器70,該解碼器從視頻位流中分離出運(yùn)動(dòng)矢量差和象素?cái)?shù)據(jù)。運(yùn)動(dòng)矢量差被提供給解碼用的運(yùn)動(dòng)矢量存儲(chǔ)和檢索模塊電路72,該電路將在圖9中進(jìn)一步說(shuō)明。電路72的輸出運(yùn)動(dòng)矢量送給運(yùn)動(dòng)補(bǔ)償電路42。在實(shí)施完運(yùn)動(dòng)補(bǔ)償之后,得到的象素由加法器76順序地與離散余弦變換和反DCT電路44的輸出相加。位流解碼器70提供的象素?cái)?shù)據(jù)由離散余弦變換和反DCT 44處理以進(jìn)行基于解壓縮的變換。離散余弦變換和反DCT電路44的一個(gè)輸出端作為加法器76的第二個(gè)輸入端。加法器76提供420視頻格式的信號(hào)給后處理器24,該后處理器在從數(shù)字到模擬變換之前進(jìn)行后處理。為得到視頻模擬輸出信號(hào),進(jìn)行D/A變換。
圖9所示為依照本發(fā)明圖8中的解碼用運(yùn)動(dòng)矢量存儲(chǔ)和檢索模塊電路72。除了為了說(shuō)明硬件的實(shí)現(xiàn)在復(fù)制的相同的電路圖上加了一個(gè)撇號(hào)外,圖9和圖3中相同的元素使用相同的參考編號(hào)。也就是說(shuō),如果編號(hào)相同的元素沒(méi)有撇號(hào),例如運(yùn)動(dòng)補(bǔ)償單元42,那么該元素由圖3和圖9分時(shí)共享。圖3和圖9非常相似,主要的不同點(diǎn)在于增加了一個(gè)加法器電路80,該電路的第一個(gè)輸入端用于接收運(yùn)動(dòng)矢量寄存器50’的一個(gè)輸出,第二個(gè)輸入端用于接收預(yù)測(cè)值計(jì)算器62’的一個(gè)輸出。加法器電路80的一個(gè)輸出端提供一個(gè)完整的運(yùn)動(dòng)矢量(預(yù)測(cè)值與差的和)用于在運(yùn)動(dòng)矢量的SRAM數(shù)組52,中存儲(chǔ)。解碼用運(yùn)動(dòng)矢量存儲(chǔ)和檢索模塊電路72的操作與前面講述的圖2中的運(yùn)動(dòng)矢量存儲(chǔ)和檢索模塊38的操作類似。因此,不再重復(fù)說(shuō)明對(duì)解碼用運(yùn)動(dòng)矢量存儲(chǔ)和檢索模塊電路72的操作。需要注意的一個(gè)類似功能的例外是運(yùn)動(dòng)矢量差寄存器50’在解碼模式下存儲(chǔ)一個(gè)運(yùn)動(dòng)矢量不同于圖3中的寄存器50存儲(chǔ)的是一個(gè)完整的運(yùn)動(dòng)矢量。此外,如圖3中運(yùn)動(dòng)矢量必須存儲(chǔ)于SRAM運(yùn)動(dòng)矢量數(shù)組52’中。為了得到將在SRAM數(shù)組52’中存儲(chǔ)的運(yùn)動(dòng)矢量,來(lái)自預(yù)測(cè)值計(jì)算器62’的預(yù)測(cè)值必須與來(lái)自運(yùn)動(dòng)矢量寄存器50’的運(yùn)動(dòng)矢量差相加。這些運(yùn)動(dòng)矢量的存儲(chǔ)形成了對(duì)應(yīng)于第二個(gè)宏塊的第二組運(yùn)動(dòng)矢量。
至此很明顯本發(fā)明提供了一個(gè)可以高效地檢索和存儲(chǔ)運(yùn)動(dòng)矢量的改善了的視頻運(yùn)動(dòng)系統(tǒng)和方法。在內(nèi)存中存儲(chǔ)運(yùn)動(dòng)矢量的方法包括接收四個(gè)運(yùn)動(dòng)矢量的步驟。其中每個(gè)運(yùn)動(dòng)矢量對(duì)應(yīng)于代表一個(gè)視頻信號(hào)一部分的第一個(gè)宏塊。第一個(gè)和第二個(gè)運(yùn)動(dòng)矢量對(duì)應(yīng)于第一個(gè)宏塊的上半部分,第三個(gè)和第四個(gè)運(yùn)動(dòng)矢量對(duì)應(yīng)于該宏塊的下半部分。第一個(gè)和第二個(gè)運(yùn)動(dòng)矢量存儲(chǔ)在內(nèi)存的第一部分,第三和第四個(gè)運(yùn)動(dòng)矢量存儲(chǔ)在內(nèi)存的第二部分。本發(fā)明大大地減少了實(shí)現(xiàn)SRAM運(yùn)動(dòng)矢量數(shù)組52和52’所要求的內(nèi)存量。例如,假設(shè)每個(gè)運(yùn)動(dòng)矢量2個(gè)字節(jié),視頻編碼解碼器的解碼器部分的存儲(chǔ)需要192字節(jié)內(nèi)存。192的算出方法如下[(24宏塊)(4運(yùn)動(dòng)矢量/宏塊)(2字節(jié)/運(yùn)動(dòng)矢量)]=192盡管看來(lái)192字節(jié)內(nèi)存是所需的最小的內(nèi)存大小,本發(fā)明大大地節(jié)省了內(nèi)存。尤其是,本發(fā)明避免存儲(chǔ)圖4所示的宏塊C-2之前不需要存儲(chǔ)的那些宏塊的上半部分的運(yùn)動(dòng)矢量。也就是說(shuō),宏塊C-3,C-4,C-5到C-23的上半部分的兩個(gè)塊都未被存儲(chǔ)。這種節(jié)省空間的方法要求的內(nèi)存大小如下[(24宏塊的下運(yùn)動(dòng)矢量)(2運(yùn)動(dòng)矢量/宏塊)]=48個(gè)下運(yùn)動(dòng)矢量。(3宏塊的上運(yùn)動(dòng)矢量)(2運(yùn)動(dòng)矢量/宏塊)=6個(gè)上運(yùn)動(dòng)矢量??傋止?jié)數(shù)=[(48+6)運(yùn)動(dòng)矢量][2字節(jié)每運(yùn)動(dòng)矢量]=108字節(jié)。
因?yàn)轭A(yù)測(cè)器和OBMC功能必須在視頻編碼解碼器的編碼器和解碼器兩側(cè)進(jìn)行,所以總節(jié)省量為2(108)對(duì)2(192)。在本具體例子中,正如上面計(jì)算的那樣,使用本發(fā)明節(jié)省內(nèi)存的大小為對(duì)216字節(jié)對(duì)384字節(jié)(大約節(jié)省44%)。如果本發(fā)明與HDTV的MPEG-4一起使用,節(jié)省的內(nèi)存量將會(huì)更大,因?yàn)橛懈叩乃椒纸饴?。需要注意的是使用本文所講述的內(nèi)存分配方法丟棄宏塊C-2之前的塊1和塊2并不要求復(fù)雜的尋址方法。本發(fā)明允許H.263標(biāo)準(zhǔn)的OBMC和預(yù)測(cè)器功能無(wú)需增加尋址硬件即可共享內(nèi)存。通過(guò)減少所需硬件,硅面積,成本和電能消耗也能得以減少,從而使視頻編碼解碼器的硬件實(shí)現(xiàn)可與軟件實(shí)現(xiàn)相競(jìng)爭(zhēng)甚至優(yōu)于軟件實(shí)現(xiàn)。
熟悉本技術(shù)領(lǐng)域中的人將會(huì)認(rèn)識(shí)到可以在不超出本發(fā)明的范圍內(nèi)進(jìn)行修改和變化。例如,可以用各種不同類型的電子內(nèi)存來(lái)實(shí)現(xiàn)所謂的術(shù)語(yǔ)“術(shù)存”。本發(fā)明的方法可由各種邏輯門配置來(lái)實(shí)現(xiàn)。因此,本發(fā)明可在包含所有這些在所附的權(quán)利要求書范圍內(nèi)的變化和修改。
權(quán)利要求
1.一種用于對(duì)視頻信號(hào)進(jìn)行編碼和解碼的存儲(chǔ)和檢索運(yùn)動(dòng)矢量的裝置,該裝置的特征在于有一組存儲(chǔ)元素的內(nèi)存,該組存儲(chǔ)元素的第一個(gè)元素存儲(chǔ)一個(gè)視頻幀的一個(gè)宏塊的第一個(gè)運(yùn)動(dòng)矢量。該宏塊是表示一個(gè)視頻幀的一組宏塊中的一個(gè),存儲(chǔ)元素組的第二個(gè)元素存儲(chǔ)宏塊的第二個(gè)運(yùn)動(dòng)矢量,所存儲(chǔ)的第一運(yùn)動(dòng)矢量和第二運(yùn)動(dòng)矢量都是同一個(gè)宏塊的,第一個(gè)運(yùn)動(dòng)矢量和第二個(gè)運(yùn)動(dòng)矢量由運(yùn)動(dòng)矢量預(yù)測(cè)值計(jì)算和用于消除視頻非自然信號(hào)的重疊塊運(yùn)動(dòng)補(bǔ)償所共享;和與內(nèi)存相連接地址生成電路,該地址生成電路控制運(yùn)動(dòng)矢量存儲(chǔ)位置。其中,內(nèi)存和地址生成電路都是由集成電路形式的硬件元件來(lái)實(shí)現(xiàn)。
2.如權(quán)利要求1的裝置,其特征還在于包括一個(gè)響應(yīng)內(nèi)存的預(yù)測(cè)值計(jì)算器。
3.如權(quán)利要求1的裝置,其中第一個(gè)運(yùn)動(dòng)矢量指向宏塊的上半部分,第二個(gè)運(yùn)動(dòng)矢量指向宏塊的下半部分,內(nèi)存存儲(chǔ)一組運(yùn)動(dòng)矢量,第一組運(yùn)動(dòng)矢量對(duì)應(yīng)于至少一個(gè)宏塊的上半部分,第二組運(yùn)動(dòng)矢量對(duì)應(yīng)于至少一個(gè)宏塊的下半部分,第一組運(yùn)動(dòng)矢量在內(nèi)存中所占的存儲(chǔ)元素少于第二組運(yùn)動(dòng)矢量。
4.一種用于編碼解碼視頻信號(hào)的存儲(chǔ)和檢索運(yùn)動(dòng)量矢量的方法,其特征在于包括下列步驟提供一個(gè)內(nèi)存;接收表示第一個(gè)宏塊中是左上塊的塊1的第一個(gè)運(yùn)動(dòng)矢量,表示第一個(gè)宏塊中是右上塊的塊2的第二個(gè)運(yùn)動(dòng)矢量,表示第一個(gè)宏塊中是左下塊的塊3的第三個(gè)運(yùn)動(dòng)矢量,表示第一個(gè)宏塊中是右下塊的塊4的第四個(gè)運(yùn)動(dòng)矢量,第一個(gè)宏塊表示一個(gè)視頻幀的一部分,第一和第二個(gè)運(yùn)動(dòng)矢量表示第一個(gè)宏塊的上半部分,第三和第四個(gè)運(yùn)動(dòng)矢量表示第一個(gè)宏塊的下半部分;以及第一和第二運(yùn)動(dòng)矢量存儲(chǔ)在內(nèi)存的第一部分,第三和第四個(gè)運(yùn)動(dòng)矢量存儲(chǔ)在內(nèi)存的第二部分。
全文摘要
一個(gè)能對(duì)符合壓縮標(biāo)準(zhǔn),如H.263標(biāo)準(zhǔn)的視頻信號(hào)進(jìn)行編碼解碼并能高效地存儲(chǔ)和檢索與信號(hào)有關(guān)的運(yùn)動(dòng)矢量的系統(tǒng)(10)。編碼器(16)和解碼器(22)各使用一個(gè)運(yùn)動(dòng)矢量存儲(chǔ)和檢索電路(38,72),該電路在各自的SRAM數(shù)組(52,52’)中尋址。通過(guò)除去當(dāng)前計(jì)算不需要的運(yùn)動(dòng)矢量,只存儲(chǔ)最少量的運(yùn)動(dòng)矢量來(lái)實(shí)現(xiàn)視頻信號(hào)的先行預(yù)測(cè)模式。避免存儲(chǔ)預(yù)先確定的宏塊的上運(yùn)動(dòng)矢量來(lái)節(jié)省內(nèi)存。
文檔編號(hào)H04N7/32GK1248861SQ9911043
公開(kāi)日2000年3月29日 申請(qǐng)日期1999年7月12日 優(yōu)先權(quán)日1998年7月13日
發(fā)明者戴維·J·霍金斯, 布魯斯·A·奧古斯丁 申請(qǐng)人:摩托羅拉公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
南城县| 万全县| 常德市| 永仁县| 虎林市| 聂荣县| 洞头县| 临桂县| 唐山市| 鄄城县| 镇安县| 承德县| 大名县| 成武县| 河东区| 梅河口市| 淅川县| 常宁市| 杭州市| 乐清市| 沾益县| 西丰县| 开封县| 新干县| 清远市| 汕尾市| 文昌市| 鲁山县| 津市市| 车险| 海丰县| 泸州市| 都兰县| 休宁县| 永仁县| 射洪县| 荔浦县| 长泰县| 绍兴县| 汽车| 钟山县|