一種3d圖像的視差圖生成方法及系統的制作方法
【技術領域】
[0001] 本發明涉及3D顯示領域,尤其涉及的是一種3D圖像的視差圖生成方法及系統。
【背景技術】
[0002] 一般來說,3D (t虹ee-dimensional,H維)圖像通常由兩路圖像組成,對應于某一 特定的觀看角度在人眼中便可實現3D效果,形成立體感,讓人眼看上去就像真的一樣。根 據送兩路視頻所包含的視差信息,可W生成新的觀看角度所對應的圖像,送是裸眼3D電視 的關鍵所在。現有的由輸入圖像來計算視差圖,第一步通常是進行塊匹配,然后是采用不同 的方法優化塊匹配的結果,W獲得較為準確的結果。但現有的優化塊匹配結果的全局算法 過于復雜,用硬件實現存在巨大的困難,而非全局算法則無法給出令人滿意的結果,因此現 有的獲取視差圖的方法中視差圖準確率低,帶來了大大的不便。若將該問題構造成隱馬爾 可夫模型化idden Markove Model),從而引入維特比算法求視差圖的最佳解,送樣的方法 可將計算量減少到硬件實現成為可能的程度。但該方法在使用維特比算法時假設行與行之 間是獨立的,所W計算所得的視差圖容易產生"拖尾"(streaking)現象。
[0003] 因此,現有技術還有待于改進和發展。
【發明內容】
[0004] 本發明要解決的技術問題在于,提供一種3D圖像的視差圖生成方法及系統,旨在 解決現有的視差圖生成方法硬件實現困難,準確率低、使用所得的視差圖容易產生拖尾現 象的問題。
[0005] 本發明解決技術問題所采用的技術方案如下: 一種3D圖像的視差圖生成方法,其中,包括W下步驟: 51、 對3D圖像的左圖像和右圖像進行灰度處理,得到對應的灰度信息; 52、 對所述左圖像和右圖像的灰度信息進行塊匹配處理,得到包含視差圖信息的H維 矩陣; 53、 對所述H維矩陣的每一行進行代價矩陣處理,得到每一行對應的代價矩陣; 54、 根據預先設置的同一行相鄰點的視差差值視差約束條件、相鄰兩行相同水平位置 點的視差差值約束條件和優化目標函數,構造隱馬爾可夫模型對每一行對應的代價矩陣進 行優化,并采用維特比算法找出每一行使所述優化目標函數值最小時對應的視差; 55、 根據每一行所述的視差生成所述3D圖像的視差圖。
[0006] 所述的3D圖像的視差圖生成方法,其中,所述步驟Sl具體包括: S11、將所述左圖像和右圖像進行灰度處理,具體為;I=R+G+B,其中,R,G,B為所述 左圖像和右圖像中每個像素點轉換前的分量值;I為每個像素點轉換后的灰度值,且I 取R、G和B之和的高8位。
[0007] 所述的3D圖像的視差圖生成方法,其中,所述步驟S2具體包括: S21、定義Wxj)和托>,)分別為左圖像和右圖像的灰度信息,其中,W左上角的點 為原點,點為圖像的水平和垂直方向的坐標; 522、 通過塊匹配函數對所述左圖像和右圖像的灰度信息進行塊匹配處理,所述塊匹配 函數為:
,其中,h為一整數,其 取值范圍在1到4之間,整數d定義在區間
均為整數; 523、 將左圖像向右水平位移d個像素點,通過所述塊匹配函數計算位移后的左圖像與 右圖像W點(x,y)為中必、(2h+ l)*(2h+l)個點對點之間的差值之和,從而得到對應的包 含視差圖信息的H維矩陣。
[0008] 所述的3D圖像的視差圖生成方法,其中,所述步驟S3具體包括: S31、對所述H維矩陣的每一行進行代價矩陣處理;所述H維矩陣為X*Y*(cLx-cL。+ 1) 的H維矩陣,其中,X和Y分別為3D圖像垂直方向和水平方向上的像素數量;通過所述塊 匹配函數計算第m行的代價矩陣
,其中, yE [l,Y],mE [1,X],K= dmax-dmin+ 1。
[0009] 所述的3D圖像的視差圖生成方法,其中,所述步驟S4具體包括: 541、 設第m行視差為D =IDi,…,Dy },其中,屯1。《0^《(^,1《7《¥;所述視差約 束條件為
表示第m行第y個 像素的視差,所述視差約束條件即為同一行相鄰的視差的差異不超過某一正整數N,及相鄰 兩行相同水平位置點之間的視差的差異不超過某一正整數M ; 542、 定義第一代價函數
;其中,當X > N時,(6(6(63為纖;定義第二代價函數;/|^胃滿足:
;其中,當x〉M時, 而W二的; 543、 定義第m行的優化目標函數為:
,其中, /m化,3^) 為所述代價矩陣賴責中的第Dy行第y列的元素; 544、 對每一行對應的代價矩陣進行優化,通過維特比算法找出使優化目標函數 笠媒^;|龍I;最小的視差D作為該第m行的視差,即得化胃。
[0010] 所述的3D圖像的視差圖生成方法,其中,所述步驟S5包括: 551、 根據所述H維矩陣的每一行對應的視差構成對應的X行Y列的視差矩陣; 552、 所述視差矩陣即為所述3D圖像對應的視差圖。
[0011] 一種3D圖像的視差圖生成系統,其中,包括: 灰度獲取模塊,用于分別對3D圖像的左圖像和右圖像進行灰度處理,得到對應的灰度 信息; 塊匹配處理模塊,用于對所述左圖像和右圖像的灰度信息進行塊匹配處理,得到包含 視差圖信息的H維矩陣; 代價矩陣處理模塊,用于對所述H維矩陣的每一行進行代價矩陣處理,得到每一行對 應的代價矩陣; 視差優化計算模塊,用于根據預先設置的同一行相鄰點的視差差值視差約束條件、相 鄰兩行相同水平位置點的視差差值約束條件和優化目標函數,構造隱馬爾可夫模型對每一 行對應的代價矩陣進行優化,并采用維特比算法找出每一行使所述優化目標函數值最小時 對應的視差; 視差圖生成模塊,用于根據每一行所述的視差生成所述3D圖像的視差圖。
[0012] 所述的3D圖像的視差圖生成系統,其中,所述塊匹配處理模塊包括: 塊匹配計算單元,用于定義和Jj(Xx)分別為左圖像和右圖像的灰度 信息,其中,W左上角的點為原點,點為圖像的水平和垂直方向的坐標;通過塊 匹配函數對所述左圖像和右圖像的灰度信息進行塊匹配處理,所述塊匹配函數為:
,其中,h為一整數,其取值范圍 在1到4之間,整數d定義在區間!:達,*沒 1上,苗、和浸 均為整數; L.厳娘9扮諒… till巧 鉛纖 H維矩陣生成單元,用于將左圖像向右水平位移d個像素點,通過所述塊匹配函數計 算位移后的左圖像與右圖像W點(X,y)為中必、(2h+ l)*(2h+l)個點對點之間的差值之 和,從而得到對應的包含視差圖信息的H維矩陣。
[0013] 所述的3D圖像的視差圖生成系統,其中,所述代價矩陣處理模塊包括: 代價矩陣計算單元,用于對所述H維矩陣的每一行進行代價矩陣處理;所述 S維矩陣為料Y* (cU-dmm+ 1)的S維矩陣,其中,X和Y分別為3D圖像垂直方向 和水平方向上的像素數量;通過所述塊匹配函數計算第m行的代價矩陣為
,其中,y e [l,Y],m e [1,X],K= cU-cU+ 1。
[0014] 所述的3D圖像的視差圖生成系統,其中,所述視差優化計算模塊包括: 約束條件設置單元,用于設第m行視差為D =化1,…,Dy },其中, 1《y《Y;所述視差約束條件為
,其中, 想;表示第m行第y個像素的視差,所述視差約束條件即為同一行相鄰的視差的差異 不超過某一正整數N,及相鄰兩行相同水平位置點之間的視差的差異不超過某一正整數M ; 代價函數設置單元,用于定義第一代價函數滿足:
;其中,當X > N時, 蠟(尤)二W ;定義第 二代價函數
;其中,當x〉M時, 而(王)二的. 優化目標函數設置單元,用于定義第m行的優化目標函數為:
其中, 糸夢|碼:,護I為所述代價矩陣J縣>沖的第Dy行第y列的元素; 視差計算單元,用于對每一行對應的代價矩陣進行優化,通過維特比算法找出使優化 目標函數