国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于矩陣變換的立體視頻播放技術研究

2014-09-15 00:53:54陳志文梁發(fā)云何小明陳海初熊根良
計算機工程與科學 2014年3期
關鍵詞:播放器立體像素

陳志文,梁發(fā)云,何小明,陳海初,熊根良

(南昌大學裸眼立體技術與虛擬現(xiàn)實研究中心,江西 南昌 330031)

基于矩陣變換的立體視頻播放技術研究

陳志文,梁發(fā)云,何小明,陳海初,熊根良

(南昌大學裸眼立體技術與虛擬現(xiàn)實研究中心,江西 南昌 330031)

立體圖像按存儲方式不同分為立體圖片和視頻,把左右格式立體圖像準確傳輸?shù)铰阊?D顯示器的亞屏幕,是3D播放的關鍵技術。針對不同存儲格式的立體圖像,使用矩陣變換及視頻融合算法,在FFmpeg函數(shù)庫基礎上構建立體視頻播放器。實驗表明該算法能將立體圖像正確映射到左右眼亞屏幕。

立體顯示;矩陣變換;3D播放器;立體度

1 引言

獲取立體圖像的成像系統(tǒng)是模擬人類的視覺設計的,用兩臺保持一定間距的攝像機同步采集場景,然后將圖像保存為圖片或視頻形式[1]。

立體圖像的存儲形式分為分別存儲的左右眼圖像文件或單文件的視圖組合形式。組合格式立體視頻左右眼視頻幀一一對應,剪輯方便且播放時無需考慮幀不同步造成的畫面紊亂,應用最廣泛。

與二維圖像的顯示方法不同,裸眼式3D顯示器使用左右眼圖像像素間隔排列亞屏幕方式在屏幕上顯示雙眼畫面,為了解決圖像快速融合的算法,滿足裸眼3D畫面的顯示要求,需要對圖像數(shù)據(jù)進行適當?shù)淖儞Q和處理[2]。為滿足工程應用和網絡播放的需求,本文重點研究基于矩陣變換的立體圖像融合算法,并以圖像處理函數(shù)庫FFmpeg為基礎開發(fā)出適用的3D播放器。

2 裸眼立體顯示原理

裸眼3D技術是近幾年發(fā)展起來的光電顯示技術,觀看者無需佩戴眼鏡就可以感受到立體畫面的深度感和臨場感。在結構上,裸眼立體顯示器采用LCD作為顯像層,使用柱狀透鏡(Lenticular Lens)技術、光屏障式(Barrier)技術或指向光源(Directional Backlight)等方法將具有視差的立體圖像對分別傳送到左右眼中,經過大腦視覺神經中樞處理產生立體效果[3]。

根據(jù)光學原理,左右眼的圖像在屏幕上按列交錯排列。為了把左右視圖傳送到奇、偶列的像素上,可以使用視頻數(shù)字處理電路或者軟件方法對左右格式圖像進行處理[4],實現(xiàn)圖像和像素的對應傳輸。立體圖像顯示原理如圖1所示。

Figure 1 Principle of stereoscopic image display圖1 立體圖像顯示原理

3 立體圖像處理

立體圖像包含了左右眼的全部信息,其存儲方式可分為左右眼圖像分別存儲的雙文件形式或左右圖像組合形式的單文件存儲,視頻立體圖像還需包含音頻信息。全寬左右圖像在進行畫面融合時需要按列間隔重新采樣圖像,而半寬左右圖像在存儲前已完成間隔采樣。

以一幅分辨率為m×2n的全寬左右格式立體圖片為例,左右眼畫面的分辨率分別為m×n,可用像素矩陣式(1)和式(2)表示[5]。

(1)

(2)

在顯示器上播放時,經過融合算法處理后的像素可以用矩陣式(3)表示。

P3D=

(3)

當n為奇數(shù)時,k=n,n為偶數(shù)時,k=n-1。

令n維列向量:

0=(0,0,…,0)T,L1=(1,0,0,…,0)T,L2=(0,1,0,…,0)T,L3=(0,0,1,…,0)T,…,Lm=(0,0,0,…,1)T

當n為奇數(shù)時,令:

A1= (L1,0,L3,0,L5, 0,…,Ln)

可以得到3D運算公式:

(4)

n為偶數(shù)時,令:

A2=(L1,0,L3,0,L5, 0,…,Ln-1,0)

可以得到3D運算公式:

(5)

圖2和圖3是左右畫面融合的示例。左右格式立體對由3D照相機拍攝后經過剪輯合并而成,播放時左半部分映射到奇列組成的左眼亞屏幕,右半部分映射到偶列組成的右眼亞屏幕。融合之后的立體圖片寬度應是左右格式圖片寬度的一半。

Figure 2 Left-Right picture圖2 左右格式圖片

Figure 3 Fusion of image圖3 融合后屏幕畫面

視頻文件在播放過程中,首先對文件進行解碼。解碼過程是編碼的逆過程,按照各幀的解碼順序對圖像進行解碼,解碼完成后放入緩存的數(shù)據(jù)為YUV格式[6]。YUV是RGB通過矩陣變換而得到的亮度信號和色差信號,本文中以YUV420存儲格式為例來研究立體視頻畫面融合算法。

對于分辨率為m×2n(畫面行數(shù)為m,列數(shù)為2n)左右格式的視頻畫面,其圖像可以用類似于P2DL和P2DR的m行、2n列矩陣P2D表示[7],其融合矩陣可以用m行、2n列矩陣P3D表示。

根據(jù)矩陣初等變換定理,對s×t矩陣A作一次初等列變換,相當于在A的右邊乘上相應的t×t初等矩陣。對于2n階單位矩陣E:

E=diag(1,1,…,1)2n×2n

(6)

令2n維列向量:

S1=(1,0,0,…,0)T,S2=(0,1,0,…,0)T,

S3=(0,0,1,…,0)T,…,S2n=(0,0,0,…,1)T

此時,

E=(S1,S2,S3,…,S2n)

(7)

要完成從P2D到P3D的列變換過程,應將矩陣E進行相同的列變換,即,

X=(S1,Sn+1,S2,Sn+2, …,S2n)

(8)

矩陣X上方及右方數(shù)字表示其對應的行列在變換之前所處位置。將原始像素矩陣右乘這一變換矩陣X,即可求得像素融合矩陣P3D:

P2D·X=P3D

(9)

4 立體圖像播放軟件實現(xiàn)及安卓系統(tǒng)移植研究

FFmpeg是開源的,可以用來記錄、轉換數(shù)字音、視頻文件,并能將其轉化為數(shù)據(jù)流的C語言程序。FFmpeg在視頻格式轉換和播放軟件的開發(fā)中具有很大優(yōu)勢。本文以FFmpeg為核心設計的播放器輸出的視頻數(shù)據(jù)流為YUV格式,通過SDL(Simple DirectMedia Layer)平臺顯示。SDL是一個高效率的多媒體庫,在視頻播放、模擬器和很多視頻游戲中應用廣泛[8]。使用FFmpeg處理音頻和視頻流的流程如圖4所示。

Figure 4 3D video processing flow圖4 立體視頻處理流程

在結構體AVPicture中有兩個重要的數(shù)據(jù):data[4]和linesize[4]。視頻文件經過解碼處理后,解碼的數(shù)據(jù)以YUV420的格式存儲在以data[0]為首地址的內存中,其中data[0]指向Y數(shù)據(jù)首地址,data[1] 指向U數(shù)據(jù)首地址,data[2] 指向V數(shù)據(jù)首地址。

Figure 5 Relationship between the data and YUV圖5 data與YUV數(shù)據(jù)關系

在進行幀畫面融合時,先將Y數(shù)據(jù)映射到矩陣P2D(width×height),右乘的矩陣X′應為height階方陣,求出對應的矩陣P3D,再將U、V數(shù)據(jù)分別映射到矩陣P2D(width/2 ×height/2),右乘的矩陣X′應為height/2階方陣,分別求出對應的P3D。將YUV420格式轉換成RGB格式,使用SDL顯示出經轉換之后的視頻數(shù)據(jù)即能夠實現(xiàn)在裸眼立體顯示器上的正確顯示[9]。

Android系統(tǒng)軟件一般使用Java語言進行開發(fā)。Java語言具有多平臺移植的優(yōu)點,同時也帶來了運行效率低的缺點。在軟件開發(fā)中,一些效率敏感的部分使用Java的效果不理想。為了彌補這一缺點,JNI(Java Native Interface)應運而生,JNI是為編譯C/C++等本地語言而設計的編程接口,它能幫助我們從Java應用程序中調用其他語言編寫的程序或方法[10]。

首先安裝cygwin或Linux操作系統(tǒng)。cygwin是Windows下仿Linux的運行環(huán)境。將Android NDK(Native Development Kit)配置到cygwin中,NDK提供了眾多工具使開發(fā)者能快速開發(fā)C/C++的動態(tài)庫,并能自動將so文件和Java應用打包成apk安裝文件。使用Java編寫JNI接口文件。用Javah命令將其轉換成h文件,命令為javah -classpath bin -d jni package_name,其中-classpath bin表示類的路徑,-d jni表示該頭文件存放的路徑,package_name表示完整的類名。編寫與該頭文件同名的c文件,該文件的作用是獲取視頻解碼數(shù)據(jù),并實現(xiàn)3D運算。編寫Android.mk文件,該文件對FFmpeg源代碼及該c文件的編譯方法做出定義,并定義生成的so文件名。完成上述工作后,打開cygwin,使用命令cd X:/prj_path進入工程目錄,輸入命令ndk-build,系統(tǒng)將根據(jù)mk文件的配置調用各代碼文件并進行編譯,最終將生成后綴為so的目標文件。將該文件復制到工程目錄lib文件夾中。編寫Java代碼,該文件應該聲明裝載最后將要生成的so文件:System.loadLibrary("lib_name");表示程序調用該動態(tài)鏈接庫,調用Android API實現(xiàn)播放器的各種功能。編寫xml文件,對播放器界面進行布局。

5 算法性能實驗

根據(jù)上述播放器構建方法和視頻畫面融合算法設計出裸眼立體播放器,代碼在VS 2010環(huán)境下編譯通過,圖6為左右格式視頻的平面播放效果。

Figure 6 Playing effect on flat-screen圖6 平面播放效果

經過視頻幀融合之后在裸眼3D顯示器上播放的照片如圖7所示,該裸眼立體液晶顯示器由南昌興亞光電科技發(fā)展有限公司研制,其分辨率為1 280×1 024、獨立視區(qū)數(shù)為10個、立體度為20。

Figure 7 Fusion effect of 3D image圖7 立體畫面融合效果

6 結束語

左右格式立體圖像根據(jù)裸眼3D顯示器的亞屏幕像素排列要求,使用矩陣變換的融合算法完成畫面重組,并研究了將該軟件移植到安卓系統(tǒng)的可行性,該方法在本領域研究中具有一定的創(chuàng)新性,為3D技術的普及應用和網絡播放提供了借鑒。

[1] Guo Lei, Li Hui-hui, Bao Yong-sheng. Image fusion[M].Beijing:Publishing House of Electronics Industry,2008.(in Chinese)

[2] Zhang Can-feng, Zhou Hai-fang. Research and implementation of the parallel algorithms of pixel-level image fusion for remote-sensing[J]. Computer Engineering & Science, 2010,32(9):34-38.(in Chinese)

[3] Wang Pan-feng,Du Yun-fei,Zhou Hai-fang,et al. A parallel fusion algorithm for remote sensing images based on complex wavelet transform[J]. Computer Engineering & Science, 2008,30(3):35-39.(in Chinese)

[4] McAllister D F. Stereo computer graphics and other true 3D technologies[M]. NJ:Princeton University Press, 1993.

[5] Cheng I, Basu A. Optimal aspect ratio for 3D TV[C]∥Proc of IEEE 3D TV Conference, 2007:1-4.

[6] Basu A, Sahabi H. Optimal non-uniform discretization for stereo reconstruction[C]∥Proc of the 13th International Conference on Pattern Recognition, 1996:755-759.

[7] Brown M Z, Burschka D, Hager G D. Advances in computational stereo[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2003,25(8):993-1008.

[8] Cheng I, Basu A. Perceptually optimized 3D transmission over wireless networks[J]. IEEE Transactions on Multimedia, 2007,9(2):386-396.

[9] Pan Y, Cheng I, Basu A. Quality metric for approximating subjective evaluation of 3D objects[J]. IEEE Transactions on Multimedia, 2005,7(2):269-279.

[10] Meng Liang, Wu Lu-shen. Method of single pixel edges detection for 3D surface measurement[J]. Journal of Nanchang University(Engineering&Technology), 2005,27(3):7-9.(in Chinese)

附中文參考文獻:

[1] 郭雷, 李暉暉, 鮑永生. 圖像融合[M].北京:電子工業(yè)出版社,2008.

[2] 張燦峰, 周海芳.像素級遙感圖像融合并行算法研究與實現(xiàn)[J].計算機工程與科學,2010,32(9):34-38.

[3] 王攀峰, 杜云飛, 周海芳, 等.基于雙樹復小波變換的遙感圖像并行融合算法[J].計算機工程與科學, 2008,30(3):35-39.

[10] 孟亮, 吳祿慎.三維圖像測量中單像素級邊緣的檢測[J].南昌大學學報(工科版),2005,27(3):7-9.

CHEN Zhi-wen,born in 1986,MS candidate,his research interests include optical display technology,and measurement & control technology.

Study of stereoscopic video playing technique based on matrix transformation

CHEN Zhi-wen,LIANG Fa-yun,HE Xiao-ming,CHEN Hai-chu,XIONG Gen-liang
(3D & VR Research Centre,Nanchang University,Nanchang 330031,China)

According to the way of storage, stereo image is divided into 3D pictures and video. It is the key technique of 3D display that transmitting left-right format stereoscopic image to the sub-screen of the naked-eye 3D display accurately. According to the different storage formats of stereoscopic image, using matrix transformation and video fusion algorithm, a 3D video player is designed based on FFmpeg library. The experimental results show that the algorithm can map the 3D images onto the left-right eye sub-screen correctly.

stereoscopic display;matrix transformation;3D player;stereo degree

2012-10-08;

2012-12-18

江西省教育廳重點科技資助項目(GJJ09012,GJJ11001)

1007-130X(2014)03-0513-04

TP317.4

A

10.3969/j.issn.1007-130X.2014.03.024

陳志文(1986-),男,江西高安人,碩士生,研究方向為光電顯示技術和測控技術。E-mail:420075327@qq.com

通信地址:330031 江西省南昌市南昌大學前湖校區(qū)南昌大學裸眼立體技術與虛擬現(xiàn)實研究中心

Address:3D & VR Research Centre,Qian-hu Campus,Nanchang University,Nanchang 330031,Jiangxi,P.R.China

猜你喜歡
播放器立體像素
趙運哲作品
藝術家(2023年8期)2023-11-02 02:05:28
像素前線之“幻影”2000
念個立體咒
Walkman誕生40周年 索尼適時發(fā)布NW-ZX500和NW-A100系列播放器
“像素”仙人掌
基于STM32的MP3播放器設計
電子制作(2019年9期)2019-05-30 09:41:44
Moon ACE播放器/放大器一體機
立體登陸
炫酷立體卡
高像素不是全部
CHIP新電腦(2016年3期)2016-03-10 14:22:03
来凤县| 洛隆县| 乌兰浩特市| 金山区| 军事| 新丰县| 富阳市| 文昌市| 邵武市| 尖扎县| 大安市| 宜丰县| 马尔康县| 克拉玛依市| 额济纳旗| 锡林郭勒盟| 桐柏县| 临沂市| 靖江市| 海城市| 嘉兴市| 额敏县| 都江堰市| 休宁县| 碌曲县| 湖南省| 榆社县| 普安县| 余姚市| 郁南县| 孝义市| 永福县| 周至县| 宝丰县| 会东县| 康保县| 苍梧县| 林芝县| 清水县| 寻甸| 星座|