亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于wince6.0的高像素攝像頭驅(qū)動設(shè)計與實現(xiàn)

        2016-10-21 16:08:10郭艷飛宋麗華簡陽
        軟件工程 2016年5期
        關(guān)鍵詞:緩沖區(qū)寄存器嵌入式

        郭艷飛 宋麗華 簡陽

        摘 要:由于嵌入式系統(tǒng)的系統(tǒng)資源的有限性,系統(tǒng)上的攝像頭設(shè)備多通過插值等方法獲得偽高分辨率,無法滿足文字識別應(yīng)用的需求。為解決這個問題,文章首先分析了S3C6410嵌入式處理器的camera模塊接口的特性,介紹其與CMOS攝像頭的硬件連接方法,并在Windows CE6.0操作系統(tǒng)上采用DirectShow技術(shù)設(shè)計并實現(xiàn)了500萬像素高分辨率攝像頭驅(qū)動。通過實驗進行驗證分析,結(jié)果表明該攝像頭驅(qū)動運行穩(wěn)定,對其獲得的文字圖片進行識別,測試結(jié)果顯示識別率達到99.5%。

        關(guān)鍵詞:camera驅(qū)動;高分辨率;DirectShow;Windows CE6.0;S3C6410

        中圖分類號:TP303 文獻標(biāo)識碼:A

        Abstract:On account of the limitation of system resources in embedded platforms,methods like interpolation are commonly applied to obtain pseudo-high-resolution images,but which cannot meet the requirements of character recognition.In order to solve this problem,the thesis firstly analyzes the camera module interface features of the embedded processor S3C6410,and then introduces the connection method between the camera module interface and CMOS camera hardware.With the application of DirectShow technology in Windows CE6.0,the driver for high-resolution cameras(up to 5 million pixels)has been developed.A verification experiment has been conducted and the result indicates that the camera driver has both high reusability and high stability.A testing experiment has been conducted to verify the high resolution and the result shows that the recognition rate is up to 99.5%.

        Keywords:camera driver;high resolution;DirectShow;Windows CE6.0;S3C6410

        1 引言(Introduction)

        隨著嵌入式處理器的發(fā)展和硬件成本的不斷降低,拍照和攝像功能也在各種嵌入式系統(tǒng)中得到了廣泛應(yīng)用,比如拍照手機,小型監(jiān)控設(shè)備等等[1,2]。但由于嵌入式系統(tǒng)的處理速度和內(nèi)存空間有限,使得嵌入式手持設(shè)備在處理圖像數(shù)據(jù)方面受到限制,所以傳統(tǒng)嵌入式系統(tǒng)的攝像頭的分辨率都比較低,無法滿足人們即時捕獲高質(zhì)量圖片和視頻的需求。在文字識別方面,通過插值等方法達到偽高分辨率的圖像達不到識別要求[3,4],實際捕獲高分辨率,高質(zhì)量圖像成為必要條件,因此在基于嵌入式平臺,設(shè)計并實現(xiàn)一種高有效分辨率的攝像頭的驅(qū)動程序變得必要且有實際應(yīng)用價值。

        Windows CE是一個緊湊、高效和可擴展的嵌入式操作系統(tǒng)。在多媒體應(yīng)用方面,微軟將DirectShow技術(shù)集成在Windows CE6.0系統(tǒng)中,為音視頻采集等高性能要求提供了解決方案[5]。本文采用Q5M02A CMOS攝像頭模塊,在基于S3C6410平臺的Windows CE6.0系統(tǒng)下實現(xiàn)實際有效分辨率為500萬像素的攝像頭驅(qū)動,為采集高質(zhì)量的實時圖像提供解決方案。

        2 攝像頭驅(qū)動硬件平臺(Hardware platform for camera driver)

        2.1 S3C6410硬件平臺

        S3C6410是SAMSUNG公司基于ARM1176的一款低功率、高性價比、高性能低功耗的RSIC通用微處理器,它采用64/32bit的內(nèi)部總線架構(gòu),融合AXI、AHB、APB總線。典型主頻533MHz,最高可達667MHz,CPU內(nèi)部集成強大的硬件加速器,MFC(Multi-Format video Codec),3D加速器,優(yōu)化的外部存儲器接口,TFT 24bit真彩色LCD控制器,4通道的UART和定時器,32通道的DMA,I2C總線,USB Host,Camera接口等。功能強大,便于各種系統(tǒng)的開發(fā),因此應(yīng)用十分廣泛[6]。

        Camera接口的主要性能包括:

        (1)最大支持4096×4096像素的相機輸入。

        (2)編解碼/預(yù)覽鏡像和旋轉(zhuǎn)(只對預(yù)覽圖像),有X翻轉(zhuǎn)、Y翻轉(zhuǎn),90度、180度和270度旋轉(zhuǎn)功能。

        (3)支持ITU-R601/656 8位模式。

        (4)支持YCbCr4:2:2圖像格式。

        (5)數(shù)據(jù)縮放功能。

        (6)視頻同步信號極性的可編程。

        (7)支持LCD控制器直接路徑。

        (8)編解碼/預(yù)覽輸出圖像產(chǎn)生(RGB16/18/24位格式和YCbCr4:2:2/YCbCr4:2:0格式)。

        (9)支持相機圖像捕捉幀控制功能。

        (10)支持掃描線消除功能。

        (11)支持交錯相機輸入。

        2.2 Q5M02A攝像頭模塊

        Q5M02A攝像頭模塊采用實際有效像素為500萬的CMOS圖像傳感器,圖像處理芯片采用的是CLI6000/CLI6001,此芯片負責(zé)圖像數(shù)據(jù)的處理以及與主機的通信。CLI6000/CLI6001將傳感器的原始數(shù)據(jù)拼接成YCbCr4:2:2格式的數(shù)據(jù),以適應(yīng)應(yīng)用處理器的進一步處理,其功能包括黑電平校正、減少熱像素、缺陷像素校正、邊緣保持降噪、色彩校正與插值、鏡頭陰影校正、白平衡和重點控制等等功能。支持多種圖像輸出格式VGA、SXGA、QVGA等圖像輸出格式。CLI6000/CLI6001內(nèi)部寄存器的設(shè)置是通過I2C接口進行的。

        2.3 攝像頭驅(qū)動硬件平臺的設(shè)計與實現(xiàn)

        本系統(tǒng)是基于S3C6410的嵌入式開發(fā)板,同時S3C6410處理器集成有camera接口,因此像素時鐘信號、行同步信號、幀同步信號、復(fù)位信號、主時鐘信號和像素數(shù)據(jù)都可以通過camera接口與攝像頭模塊進行連接。另外,通過系統(tǒng)的I2C總線完成對攝像頭內(nèi)部寄存器的設(shè)置。S3C6410處理器與攝像頭模塊的連接如圖1所示。

        (1)camera接口

        S3C6410集成camera模塊,其接口用于連接攝像頭模塊和處理器,完成兩者的數(shù)據(jù)通訊,該接口發(fā)送或者接受攝像頭模塊的數(shù)據(jù)和控制信號,然后將得到的數(shù)據(jù)通過DMA或者FIFO方式送到內(nèi)存。

        S3C6410的camera模塊的外部接口定義如下:

        a.CIF_MCLK:輸出的S3C6410主時鐘,當(dāng)外接的圖像處理芯片有獨立的時鐘時, 該信號可被忽略掉。

        b.CIF_PCLK:輸入的圖像視頻像素同步時鐘。

        c.CIF_VSYNC:輸入的圖像視頻幀同步時鐘。

        d.CIF_HREF:輸入的圖像視頻行同步時鐘。

        e.CIF_DD[0]—CIF_DD:輸入的圖像視頻的8位數(shù)據(jù)[7]。

        (2)I2C接口

        I2C總線可發(fā)送和接收數(shù)據(jù),由數(shù)據(jù)線SDA和時鐘線SCL構(gòu)成的串行總線,最高傳送速率100kbps。I2C總線共有三種類型信號:開始信號、應(yīng)答信號和結(jié)束信號。本系統(tǒng)中對攝像頭芯片寄存器的設(shè)置是通過I2C總線來完成的。

        攝像頭驅(qū)動系統(tǒng)中主時鐘是由S3C6410提供,而像素時鐘,幀同步,行同步信號是有攝像頭模塊提供,S3C6410的GPF3口控制攝像頭模塊的復(fù)位信號,而對于攝像頭模塊寄存器的讀寫是通過I2C總線來完成的。

        3 Windows CE6.0下攝像頭驅(qū)動的開發(fā)(Camera driver development based on Windows CE6.0)

        在Windows CE6.0下開發(fā)攝像頭驅(qū)動,為了減少自己的工作量,可以在微軟的模板代碼的基礎(chǔ)上進行開發(fā)。由于微軟的攝像頭模板驅(qū)動代碼是基于DirectShow技術(shù)的分層驅(qū)動,現(xiàn)只需開發(fā)攝像頭的基本控制機制,上層的控制策略部分工作量相對小一些。驅(qū)動的整體架構(gòu)圖如圖2所示。

        本文是在保持MDD層控制策略不變的情況下,對PDD層以下的各個模塊進行控制機制開發(fā),PDD層主要是對攝像頭驅(qū)動涉及的四大模塊進行操作,主要包括調(diào)用I2C總線配置攝像頭圖像處理芯片的寄存器,用GPIO模塊控制攝像頭的復(fù)位,PWM模塊提供時鐘,對camera接口的操作則實現(xiàn)圖像數(shù)據(jù)的采集和處理。

        3.1 配置Q5M02A攝像頭模塊內(nèi)部寄存器

        Q5M02A攝像頭模塊中的圖像處理芯片是CLI6000/CLI6001,對其內(nèi)部寄存器的配置是通過I2C總線來完成的。Q5M02A輸出的圖像是逐行掃描的。對其主要寄存器設(shè)置如下:

        a.自動陰影補償。

        b.對其圖像輸出格式設(shè)置為YCbCr4:2:2。

        c.像素時鐘PCLK為56MHz。

        d.YCbCr數(shù)據(jù)順序為CbYCrY。

        e.圖像的寬度為2560,高度為1920。

        對CLI6000/CLI6001芯片的初始化首先需要打開I2C設(shè)備,然后設(shè)置其通信的時鐘頻率為2400以及延遲。

        3.2 對S3C6410的camera接口的操作

        S3C6410集成camera模塊,對其接口寄存器的設(shè)置主要包括:

        a.設(shè)置輸入圖像信號寬為2560像素,高為1920像素。

        b.設(shè)置輸入視頻信號的格式為ITU601,YCbCr4:2:0。

        c.設(shè)置輸入圖像信號的數(shù)據(jù)為CbYCrY。

        d.根據(jù)用戶需要設(shè)置C通道和P通道圖像數(shù)據(jù)的寬度和高度。

        e.設(shè)置C通道和P通道圖像數(shù)據(jù)的縮放系數(shù)。

        f.將C通道和P通道的DMA地址與4組數(shù)據(jù)信號的寄存器關(guān)聯(lián)起來。

        在本系統(tǒng)的攝像頭驅(qū)動中定義了一個關(guān)鍵的數(shù)據(jù)結(jié)構(gòu)MODULE_DESCRIPTOR,它對攝像頭接口的鏈接屬性進行定義存儲,在攝像頭驅(qū)動初始化的時候被初始化。MODULE_DESCRIPTOR的具體定義如下:

        typedef struct _MODULE_DESCRIPTOR

        {

        BYTE ITUXXX; //對ITU-601/656 8位模式選擇

        BYTE UVOffset; //Cb,Cr偏移量

        BYTE Order422; //YCbYCr的數(shù)據(jù)存儲順序

        BYTE Codec; //選擇422格式還是420格式

        BYTE HighRst; //復(fù)位方式選擇

        BYTE InvPCLK; //PCLK信號極性選擇

        BYTE InvVSYNC; //VSYNC信號極性選擇

        BYTE InvHREF; //HREF信號極性選擇

        UINT32 SourceHSize; //圖像水平寬度

        UINT32 SourceVSize; //圖像垂直高度

        UINT32 SourceHOffset; //水平寬度上的偏移

        UINT32 SourceVOffset; //垂直高度上的偏移

        UINT32 Clock; //PCLK像素時鐘大小

        } MODULE_DESCRIPTOR;

        攝像頭驅(qū)動被調(diào)用并且抓取數(shù)據(jù)的整個過程中就包含對camera接口的大部分操作,從在對攝像頭圖像處理芯片初始化以后,除開攝像頭聚焦、復(fù)位操作以外,后面的大部分操作都是基于S3C6410的camera接口的,對camera模塊的寄存器操作實現(xiàn)了圖像數(shù)據(jù)的抓取、顏色轉(zhuǎn)換、預(yù)縮放等功能。驅(qū)動中圖像獲取整個工作流程如圖3所示。

        對于圖像數(shù)據(jù)的采集過程,在驅(qū)動中大致分為三步。

        3.2.1 初始化camera設(shè)備

        攝像頭驅(qū)動加載時,需要進行初始化,初始化從DierctShow調(diào)用設(shè)備管理器調(diào)用cam_init開始,到設(shè)置完camera屬性,以及STILL、capture、preview模式的輸出格式時結(jié)束。

        首先需要對camera設(shè)備相關(guān)的各個設(shè)備進行物理地址與虛擬地址進行映射,即GPIO、camera和PWM設(shè)備地址映射。

        PHYSICAL_ADDRESS ioPhysicalBase={0,0};

        ioPhysicalBase.LowPart=S3C6410_BASE_REG_PA_GPIO;

        s6410IOP=(S3C6410_GPIO_REG*)MmMapIoSpace(ioPhysicalBase,sizeof(S3C6410_GPIO_REG),F(xiàn)ALSE);//GPIO虛地址分配

        ioPhysicalBase.LowPart=S3C6410_BASE_REG_PA_CAMIF;

        s6410CAM=(S3C6410_CAMIF_REG*)MmMapIoSpace(ioPhysicalBase,sizeof(S3C6410_CAMIF_REG),F(xiàn)ALSE);//Camera虛地址分配

        ioPhysicalBase.LowPart=S3C6410_BASE_REG_PA_SYSCON;

        s6410PWR=(S3C6410_SYSCON_REG*)MmMapIoSpace(ioPhysicalBase,sizeof(S3C6410_SYSCON_REG),F(xiàn)ALSE);//PWM時鐘虛地址分配

        地址映射完成以后,進入PDD函數(shù)的初始化。

        初始化完成以后,攝像頭處理器的寄存器值已經(jīng)通過I2C寫入,camera接口等也進行了相應(yīng)的設(shè)置,攝像頭此時就可以開始工作。

        3.2.2 數(shù)據(jù)采集

        數(shù)據(jù)的采集首先需要將攝像頭設(shè)置為RUN狀態(tài),當(dāng)收到數(shù)據(jù)后觸發(fā)中斷,然后調(diào)用中斷服務(wù)程序?qū)z像頭sensor中的數(shù)據(jù)拷貝并填充到相應(yīng)內(nèi)存中。采集過程如圖4所示。

        (1)首先設(shè)置寄存器的狀態(tài),將攝像頭設(shè)置為RUN狀態(tài),此時有圖像視頻數(shù)據(jù)進來。

        SetSensorFormat(lModeType);

        //為preview和still模式準(zhǔn)備buffer,并在寄存器中設(shè)置圖像的輸出格式

        CameraSetRegisters(format);

        //這個函數(shù)主要是為camera接口分配DMA內(nèi)存空間。

        最開始的初始化DMA buffer的函數(shù)中,為C通道和P通道分別開辟了緩沖區(qū):

        pCodecVirtAddr=(PBYTE)HalAllocateCommonBuffer(&Adapter1,CAPTURE_BUFFER_SIZE,&PhysCodecAddr,F(xiàn)ALSE);//為捕捉圖像開辟的緩沖區(qū)

        pPreviewVirtAddr=(PBYTE)HalAllocateCommonBuffer(&Adapter2,PREVIEW_BUFFER_SIZE,&PhysPreviewAddr,F(xiàn)ALSE);//為預(yù)覽圖像開辟的緩沖區(qū)

        緩沖區(qū)分配后,需要將DMA緩沖區(qū)與YCbCr數(shù)據(jù)起始地址相關(guān)聯(lián)起來,這里的C通道和P通道的DMA緩沖區(qū)分別對應(yīng)著各自控制信號的起始地址,且關(guān)聯(lián)空間的大小會因圖像數(shù)據(jù)格式不同而相異。例如靜態(tài)圖像采集模式下,圖像寬為Width,高為Height,C通道的YCbCr數(shù)據(jù)4:2:0,則DMA緩沖區(qū)地址與camera模塊中數(shù)據(jù)的起始地址對應(yīng)情況如下:

        size=Still_Buffer.FrameSize;

        sizeY=Still_Buffer.Width*Still_Buffer.Height;

        sizeC=Still_Buffer.Width*Still_Buffer.Height/4;

        s6410CAM->CICOYSA1=(UINT32)(PhysCodecAddr.LowPart);

        s6410CAM->CICOYSA2=s6410CAM->CICOYSA1;

        s6410CAM->CICOYSA3=s6410CAM->CICOYSA1;

        s6410CAM->CICOYSA4=s6410CAM->CICOYSA1;

        s6410CAM->CICOCRSA1=s6410CAM->

        CICOYSA1+sizeY;

        s6410CAM->CICOCRSA2=s6410CAM->

        CICOCRSA1;

        s6410CAM->CICOCRSA3=s6410CAM->

        CICOCRSA1;

        s6410CAM->CICOCRSA4=s6410CAM->

        CICOCRSA1;

        s6410CAM->CICOCBSA1=s6410CAM->

        CICOCRSA1+sizeC;

        s6410CAM->CICOCBSA2=s6410CAM->

        CICOCBSA1;

        s6410CAM->CICOCBSA3=s6410CAM->

        CICOCBSA1;

        s6410CAM->CICOCBSA4=s6410CAM->

        CICOCBSA1;

        針對Capture、Sill、Preview三種模式來對4幀緩存數(shù)據(jù)的起始地址寄存器進行設(shè)置。其中Capture、Preview兩種模式緩存的數(shù)據(jù)幀數(shù)為4,所以寄存器CICOYSA1、CICOYSA2、CICOYSA3、CICOYSA4的值分別為緩沖區(qū)起始地址、緩沖區(qū)起始地址加一幀數(shù)據(jù)的大小、緩沖區(qū)起始地址加上兩幀數(shù)據(jù)的大小、緩沖區(qū)起始地址加上三幀數(shù)據(jù)的大小。但是Still模式緩存的數(shù)據(jù)幀數(shù)為1,所以寄存器CICOYSA1、CICOYSA2、CICOYSA3、CICOYSA4的值均為緩沖區(qū)起始地址。

        DMA內(nèi)存空間分配完成后,數(shù)據(jù)采集需要將camera模塊狀態(tài)設(shè)置為ON。

        CameraCaptureControl(format,TRUE);//設(shè)置camera接口的狀態(tài)為ON

        (2)攝像頭狀態(tài)設(shè)置好以后采集圖像則會觸發(fā)攝像頭驅(qū)動的中斷服務(wù)線程,緊接著會通過MDD層的Handle_IO()函數(shù)通知PDD層調(diào)用fillbuffer函數(shù),fillbuffer函數(shù)會根據(jù)圖像格式得到當(dāng)前幀號,然后根據(jù)圖像模式不同進行不同大小數(shù)據(jù)量拷貝。例如對于靜態(tài)圖像的數(shù)據(jù)拷貝,其代碼如下:

        CurrentFrame=CameraGetCurrentFrameNum(STILL_CAPTURE_BUFFER);

        dwRet=pCsVideoInfoHdr->bmiHeader.biSizeImage;

        memcpy(pImage,(void*)m_CameraHWStillBuffer.VirtAddr,dwRet);

        (3)設(shè)置攝像頭狀態(tài)

        將攝像頭的狀態(tài)從取數(shù)據(jù)前的RUN狀態(tài)設(shè)為PAUSE狀態(tài),釋放緩沖區(qū),然后將狀態(tài)設(shè)為STOP,反初始化,完成整個驅(qū)動的調(diào)用。

        4 性能測試(Performance testing)

        搭建攝像頭驅(qū)動測試平臺,由ARM11核的S3C6410芯片,1GB的NandFlash,256MB的mobile DDR,電源管理單元等,如圖5所示。

        攝像頭傳感器的模擬數(shù)據(jù)經(jīng)過圖像處理芯片的處理,生成YCbCr數(shù)據(jù);這些數(shù)據(jù)通過camera接口的兩種類型的DMA通道進入緩沖區(qū);C通道的數(shù)據(jù)用于生成靜態(tài)圖像以JEPG或者BMP格式存儲,P通道的數(shù)據(jù)則用于液晶屏上的預(yù)覽顯示;測試時根據(jù)的屏幕的大小,將預(yù)覽圖像的格式大小設(shè)為320×240,而靜態(tài)圖像的大小則可以設(shè)置為小于等于2560×1920像素的任意大小。

        由于生成的圖像可以是RGB565格式16位、RGB32位,以及YUV格式12位(DirectShow不支持YUV格式高像素圖像),則選取其中一種格式進行識別率縱向比較,此測試選取的是RGB565格式。通過對RGB16位圖像不同分辨率下采集到的圖像的文字識別率的對比,發(fā)現(xiàn)當(dāng)分辨率為500萬(2560×1920)時,圖像的文字識別率最高,能夠滿足文字識別正確率的高標(biāo)準(zhǔn)要求。用一頁相同的僅有文字的樣張(A4、宋體5號字)進行測試,其識別結(jié)果見表1。

        5 結(jié)論(Conclusion)

        本文介紹了在S3C6410和Windows CE6.0平臺下實現(xiàn)基于DirectShow技術(shù)的高分辨率攝像頭驅(qū)動的過程。硬件上采用S3C6410自帶的camera接口、I2C總線和GPIO口,以及CMOS攝像頭;軟件上則基于camera模塊的P通道和C通道,分別對兩路數(shù)據(jù)進行相應(yīng)的處理,比如縮放、顏色空間轉(zhuǎn)換、旋轉(zhuǎn)等,然后經(jīng)過各自的DMA通道進入緩沖區(qū),緩沖區(qū)的數(shù)據(jù)再根據(jù)需求進行處理或者存儲。本文為工程人員進行三星ARM系列芯片和Windows CE6.0下高有效分辨率攝像頭驅(qū)動開發(fā)提供了參考。

        參考文獻(Reference)

        [1] Palakodety,Atmaram.CMOS Active Pixel Sensor for Digital Cameras:Current State-of the-Art[D].Master of Science (Computer Engineering).UNIVERSITY OF NORTH TEXAS.May 2007.

        [2] 彭鐵鋼,等.基于ARM的嵌入式視頻監(jiān)控系統(tǒng)設(shè)計[J].計算機工程與設(shè)計,2010,31(6):1191-1194.

        [3] 劉飛,張曦煌.基于嵌入式平臺的USB攝像頭驅(qū)動程序的實現(xiàn)[J].計算機工程與設(shè)計,2008,29(8):1994-1996.

        [4] 宋麗華,王晶晶,李也白.嵌入式系統(tǒng)下高像素攝像頭驅(qū)動程序設(shè)計與實現(xiàn)[J].小型微型計算機系統(tǒng),2011,32(4):787-792.

        [5] 汪兵,等.Windows CE嵌入式高級編程及其實例詳解[M].北京:中國水利水電出版社,2008.

        [6] S3C6410X User Manual[M].Samsung Electronics,2008.

        作者簡介:

        郭艷飛(1979-),男,博士,工程師.研究領(lǐng)域:SoC,電子商務(wù).

        宋麗華(1979-),女,博士,副教授.研究領(lǐng)域:嵌入式技術(shù),計算機網(wǎng)絡(luò)協(xié)議與通信.

        簡 陽(1989-),男,碩士生.研究領(lǐng)域:嵌入式系統(tǒng).

        猜你喜歡
        緩沖區(qū)寄存器嵌入式
        嵌入式系統(tǒng)環(huán)形緩沖區(qū)快速讀寫方法的設(shè)計與實現(xiàn)
        Lite寄存器模型的設(shè)計與實現(xiàn)
        搭建基于Qt的嵌入式開發(fā)平臺
        分簇結(jié)構(gòu)向量寄存器分配策略研究*
        嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
        關(guān)鍵鏈技術(shù)緩沖區(qū)的確定方法研究
        Altera加入嵌入式視覺聯(lián)盟
        倍福 CX8091嵌入式控制器
        自動化博覽(2014年4期)2014-02-28 22:31:15
        地理信息系統(tǒng)繪圖緩沖區(qū)技術(shù)設(shè)計與實現(xiàn)
        電視技術(shù)(2012年1期)2012-06-06 08:13:58
        大学生高潮无套内谢视频| 手机免费日韩中文字幕| 国产中文字幕亚洲综合| 日韩av一区二区蜜桃| 欧美激情国产亚州一区二区| 日本午夜理伦三级好看| 中文字幕日韩精品永久在线| 国产亚洲欧美精品永久| 日射精情感性色视频| 亚洲 欧美 影音先锋| 中文字幕有码在线视频| 伊人影院成人在线观看| 免费一级淫片日本高清| 亚洲av久久久噜噜噜噜| 躁躁躁日日躁| 亚洲一区不卡在线导航| 国产精品久久av高潮呻吟| 亚洲成av人片在线观看| 丰满少妇a级毛片野外| 免费成人福利视频| 亚洲精品二区三区在线观看| 亚洲不卡av一区二区三区四区| 亚洲av乱码一区二区三区林ゆな| 精品国偷自产在线视频九色| 久久久久亚洲精品无码网址色欲| 国内久久婷婷精品人双人| 性感人妻av在线播放| 精品在线视频在线视频在线视频| 色费女人18毛片a级毛片视频| 女人色毛片女人色毛片18| 最新永久无码AV网址亚洲| 草青青在线视频免费观看| 人成午夜大片免费视频77777 | 丰满人妻被黑人猛烈进入| 亚洲情a成黄在线观看动漫尤物 | 成人免费毛片内射美女-百度| 亚洲AV秘 无套一区二区三区| 精品视频手机在线免费观看| 久久偷看各类wc女厕嘘嘘偷窃| 亚洲精品无码久久久久| 99国产综合精品-久久久久|