《電子技術應用》
您所在的位置:首頁 > 其他 > 業界動態 > 一種多圖層任意形狀膜版的圖像疊加技術

一種多圖層任意形狀膜版的圖像疊加技術

2009-08-27
作者:童曉陽

??? 摘? 要: 針對在背景圖像開出任意形狀的剪裁區域(膜版)填充前景圖像的問題,采用多圖層方法,在背景和前景圖像之間增加一個存放膜版的圖層,提出一種多圖層任意形狀膜版的圖像疊加技術,介紹了其工作原理和具體算法,并討論了其運行實例。
??? 關鍵詞: 圖像疊加? 區域連通性? 膜版? 多圖層

?

??? 在處理圖像的過程中,常常需要在背景圖像開出任意形狀的剪裁區域來填充前景圖像,使得前景圖像在背景給定范圍內顯示和活動。Photoshop軟件采用套索工具,微軟的畫圖軟件采用“任意形狀的剪裁”工具,二種方式均可獲得任意形狀的圖像。但這種疊加需求實際上是想要事先獲得一個任意形狀外輪廓,然后在背景的該輪廓區域內填充上前景圖像,現有軟件較難實現或實現起來較繁瑣。
??? 為解決該問題,本文借鑒Photoshop軟件的多圖層制作思想,先提取或勾勒出任意形狀的剪裁區域(膜版),形成底色為白色的膜版圖層。再通過程序對該圖層進行二值化、求取膜版外接矩形、消除其內部白色孤立點、利用區域連通性消除其內部白色孤立區域等處理,形成黑色膜版,再將它與背景和前景疊加獲得復合圖像。本文給出了該疊加技術的工作原理和具體算法,通過實例說明達到的效果,并討論了該技術的擴展使用。
1? 多圖層膜版疊加技術的工作原理
??? 本疊加技術的主要思路是,先由美工人員運用Photoshop的套索工具或畫圖軟件的“任意形狀的剪裁”工具在一張包含有目標膜版的原始圖像上,提取所需的任意形狀的剪裁區域,然后復制、粘貼到一個底色為白色的圖像上,此時膜版內部仍保留原始圖像。當圖像結構和顏色復雜時,如果采用手工將膜版內部填充或涂成黑色則很繁瑣。因此這里采取專門的處理算法可將膜版內部全部變成黑色,得到的就是完整的膜版圖層,再將膜版圖像存成文件即可。進行圖像疊加時,判斷背景上的點是否屬于膜版區域,如果屬于,則把背景上該點顏色用前景上相應點顏色替代,就可達到預期的疊加目標。整個多圖層膜板疊加技術的工作原理如圖1所示。

?


??? 膜版處理算法先對膜版原始圖像進行二值化,變成白色或黑色,再消除膜版內部白色孤立奇異點(四周8個鄰點均為黑色的白色點)。求取膜版的外接矩形是為了加快處理速度。為消除膜版內部的白色區域(白色空洞),利用區域連通性原理對膜版外接矩形內的白色點進行區域連通性計算,獲得白色點的連通標記。由于膜版內部白色區域點的連通標記大于膜版外部白色點的連通標記,由此判定該白色點為膜版內部點,可變成黑色,從而消除膜版內的白色空洞,產生完整的黑色膜版,為疊加準備好所需的膜版圖層。
2? 具體算法
2.1 膜版圖像二值化

??? 對膜版原始圖像進行二值化,對圖層每個點進行處理,保留白色和黑色點,把非白非黑的點顏色變成黑色。
2.2 消除膜版內白色孤立點
??? 二值化后的膜版圖像可能存在一些白色孤立點,會影響后面的疊加處理,因此需消除。消除方法是對圖像中每個白色點判斷其四周8個鄰點是否均為黑色,如果是,則將該點變成黑色。
2.3 求取膜版的外接矩形
??? 為縮小后面區域連通性計算的范圍,需要求取膜版的外接矩形,即獲得膜版的最左邊界點和最右邊界點的橫坐標Xmin、Xmax及最上邊界點和最下邊界點的縱坐標Ymin、Ymax。
2.4 區域連通性計算
??? 為消除膜版內部的白色區域,同時避免錯誤地消除膜版外部的白色點,采用4鄰域法[1][2]計算圖層中外接矩形以內白色點所屬的連通區域標記。這里采用的技巧:將膜版外接矩形向外擴大1個象素,得到外擴矩形。求取膜版的外擴矩形如圖2所示。該外擴矩形上都是白色點,先將這些點的連通區域標記賦為1,再計算外接矩形內白色點的連通區域標記。這樣外接矩形以內而膜版以外的白色點的標記肯定為1,膜版內部白色區域的標記將大于1。圖2中,A點為膜版以外的白色點,C點為膜版內的白色區域中的點,B點為白色孤立點。

?


??? 計算區域連通性的算法描述如下:
??? (1)對連通標記數組初始化,外擴矩形四邊上的點標記為1,外擴矩形內部黑色點的標記為0。
??? (2)從左至右、從上到下掃描圖像。
??? (3)對于每行的各點,如果某點的象素值為白色,則:如果上面點和左面點有一個標記,則復制該標記;如果2點有相同的標記,則復制該標記;如果2點有不同的標記,則復制2點中較小標記;將2標記寫入等價表中作為等價標記;否則給這個象素點分配一個新標記,并將這一標記寫入等價表。
??? 第一遍從上到下4連通序貫的相關Delphi代碼如下:
MaxEquValue:=1;//連通標記變量,初始為1
for j:=Ymin to Ymax do
??? for i:=Xmin to Xmax do
??? begin
??? if ImgTempGood.Canvas.Pixels[i,j]=clWhite then //是否白色
??????begin
????? if(ImgTempGood.Canvas.Pixels[i,j-1]=clBlack) and
?????????? (ImgTempGood.Canvas.Pixels[i-1,j]=clBlack) then
????? ??? begin?//上點和左點均為黑色點
?????????? ??MaxEquValue:=MaxEquValue+1;? //新的連通標記
?????????? ??EquTable[i,j]:=MaxEquValue;? //賦值到標記數組
????? end
??? else if (ImgTempGood.Canvas.Pixels[i,j-1]=clWhite)
????? and (ImgTempGood.Canvas.Pixels[i-1,j]=clWhite) then
? ??? begin? //上點和左點同時為白色點
??????? ??Lj_1:=EquTable[i,j-1];? //上邊點的標記
??????? ??Li_1:=EquTable[i-1,j];? //左邊點的標記
??????? ??if(Li_1>0) and (Lj_1>0) then? //標記同時存在
??????? ??begin
???????????? if Li_1=Lj_1 then?? //上點和左點標記相同
????????????????EquTable[i,j]:=Li_1
??????? ???? else? //上點和左點標記不相同,取二者中小的
???????????? ???EquTable[i,j]:=MIN(Li_1,Lj_1);
??????? ??end;
????? end? //end for else if
??? else?? //上點或左點只有一個為白色點
??? begin
????? //上點為1,且有標記L,則該點的標記也為L,上點優先
? ?? if(ImgTempGood.Canvas.Pixels[i,j-1]=clWhite) and
?????? ??(EquTable[i,j-1]>0) then
??????? ??EquTable[i,j]:=EquTable[i,j-1]//左點為1,且有標記L,則該點的標記也為L
? ?? else if(ImgTempGood.Canvas.Pixels[i-1,j]=clWhite) and
???????? (EquTable[i-1,j]>0) then
???? ??EquTable[i,j]:=EquTable[i-1,j];
??? end;//end for else
?end;//end for if
end;//end for i
??? (4)考慮下一行,則重復第(3)步。
??? (5)從下到上掃描圖像,重復(3)、(4)步。
??? (6)在等價表的每一等價集中找到該等價集中最低的標記。
??? (7)掃描圖像,用等價表中的最低標記取代每一標記,即標記出較大的連通域。
2.5 消除膜版內白色區域
??? 對外接矩形內各點,判斷其連通標記是否大于1,若是,則說明該點是膜版內部白色點(空洞點),則置為黑色。
2.6 多圖層疊加
??? 圖層疊加時,對于膜版外接矩形內各點,如果是黑色點,則用該點坐標對應的前景點顏色去替代背景上相應點的顏色來完成圖像的復合疊加。相關代碼如下:
for y:=Ymin to Ymax do
??? for x:=Xmin to Xmax do? //點(x,y)是否屬于模版區域?
??? if ImgTempGood.Canvas.Pixels[x,y]=clBlack then
ImgObject.Canvas.Pixels[x,y]:=ImgForgrd.Canvas.Pixels[x,y];//背景圖像上屬于膜版區域的點填充成前景顏色
3? 運行實例
??? 本算法采用Delphi7實現,一個疊加的運行實例如圖3所示。圖中,B、T0、F分別是背景、膜版的原始圖像及前景,圖T1是二值化后的膜版圖像,圖T2是去掉白色空洞后的膜版。從圖中可看到二值化后的膜版包含許多白色孤立點和白色區域,需要消除掉。圖O是最后疊加產生的合成結果。有關本疊加技術的擴展使用討論如下:

?


??? (1)上述方法是針對在背景上開一個裁減窗口設計的。如果想開多個不交叉的裁減窗口,同樣可為每個裁減窗口準備一個膜版圖層,分別把前景、背景和每個膜版疊加。還可通過在膜版圖層移動膜版的位置,實現前景被移動過濾的效果。(2)當多個裁減窗口有交叉部分,就要注意事先安排好各膜版對應前景的遮擋關系,然后程序依照預定的前后順序進行疊加。(3)本疊加技術可用于人物拍攝時,在背景上給出藝術化外輪廓,其內部區域供被拍攝者來拍照。也可用于電視節目的制作,屏幕上留出專門形狀的區域來播放其他文字或視頻圖像。還可用于游戲制作程序,屏幕上限制某區域,供顯示游戲中人物或動畫。
4? 結? 論
??? 本文采用多圖層方法,在背景和前景之間增加一個膜版圖層來過濾前景實現圖像復合,利用區域連通性原理消除膜版內部白色孤立區域,產生黑色膜版。這些技術的運用只是圖像疊加處理中的部分方法,起到拋磚引玉的效果。
參考文獻
1?? 賈云得.機器視覺.北京:科學出版社,2000
2?? 童曉陽,楊名利.人臉輪廓定位和歸一化的研究.系統仿真學報,2005;17(3)

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产亚洲综合在线| 在线观看欧美黄色| 久久亚洲精品网站| 亚洲一区二区在线免费观看| 日韩视频免费观看高清完整版| 欧美一区1区三区3区公司| 在线视频你懂得一区| 亚洲精品综合| 亚洲啪啪91| 亚洲国产清纯| 91久久精品国产| 亚洲激情在线观看| 国产精品高清在线| 亚洲精品中文字| 伊人成人网在线看| 国产偷自视频区视频一区二区 | 亚洲一级特黄| 国产精品视频在线观看| 欧美日韩日日夜夜| 欧美深夜影院| 欧美午夜电影完整版| 欧美亚一区二区| 国产精品国产三级国产专区53| 欧美日韩一区二区三区在线| 欧美日韩精品一区二区天天拍小说 | 欧美一区2区视频在线观看 | 久久蜜臀精品av| 老司机午夜精品视频| 久久亚洲影音av资源网| 美女主播一区| 欧美久久视频| 国产精品99免费看| 欧美一区二区三区四区夜夜大片| 宅男在线国产精品| 亚洲视频久久| 亚洲在线黄色| 欧美一区二区三区男人的天堂 | 一区二区毛片| 一区二区三区 在线观看视频| 亚洲视频二区| 午夜免费日韩视频| 久久精品免视看| 亚洲国产婷婷香蕉久久久久久| 国内激情久久| 在线免费不卡视频| 亚洲精品欧美日韩| 亚洲午夜av在线| 欧美一级成年大片在线观看| 亚洲清纯自拍| 亚洲影视在线播放| 久久婷婷成人综合色| 欧美精品久久99久久在免费线| 欧美亚洲不卡| 韩国精品一区二区三区| 亚洲欧美中文日韩在线| 亚洲激情自拍| 日韩小视频在线观看| 亚洲永久免费| 久久综合色婷婷| 欧美日韩成人网| 国产欧美一区视频| 在线国产日韩| 亚洲一级二级| 亚洲激情一区二区| 性xx色xx综合久久久xx| 蜜桃精品久久久久久久免费影院| 欧美三级网页| 国内精品一区二区| 99精品黄色片免费大全| 亚洲电影网站| 亚洲女人天堂av| 欧美高清在线视频观看不卡| 国产欧美一区二区精品婷婷| 亚洲人成人一区二区在线观看 | 亚洲啪啪91| 午夜视频在线观看一区二区三区| 美女视频网站黄色亚洲| 国产精品久久中文| 91久久极品少妇xxxxⅹ软件| 欧美在线|欧美| 一区二区三区导航| 久久躁狠狠躁夜夜爽| 国产精品久久久久国产精品日日| 韩国女主播一区二区三区| 一二三区精品福利视频| 亚洲国产你懂的| 欧美一区午夜精品| 欧美日韩一区二区在线| 亚洲丰满在线| 欧美在线高清视频| 欧美一区二区三区日韩视频| 欧美日韩高清区| 在线观看欧美视频| 香蕉亚洲视频| 亚洲欧美另类久久久精品2019| 欧美激情综合五月色丁香| 韩国v欧美v日本v亚洲v| 亚洲欧美日韩专区| 一区二区三区毛片| 欧美本精品男人aⅴ天堂| 国产在线国偷精品产拍免费yy| 亚洲婷婷综合色高清在线| 99精品欧美一区二区三区综合在线 | 久久成年人视频| 国产精品福利影院| 日韩一区二区久久| 亚洲久久成人| 欧美成人首页| 麻豆视频一区二区| 欧美三级韩国三级日本三斤| 亚洲国产成人久久综合| 亚洲高清av在线| 久久精品国亚洲| 国产久一道中文一区| 中日韩视频在线观看| av成人毛片| 欧美美女福利视频| 亚洲日本国产| 99成人免费视频| 欧美高清在线视频| 亚洲精品国产精品久久清纯直播| 亚洲日本免费电影| 欧美成人一品| 亚洲激情女人| 日韩亚洲一区在线播放| 欧美极品一区| 日韩午夜av电影| 亚洲视频日本| 欧美午夜在线视频| 中文欧美字幕免费| 亚洲欧美一区二区原创| 国产精品夜夜夜| 欧美一区二区啪啪| 久久午夜精品| 国产精品国产三级国产aⅴ无密码| 亚洲午夜精品久久| 欧美在线观看一区二区| 国产日本欧美视频| 久久精品一区蜜桃臀影院| 久热精品视频在线观看一区| 精品动漫3d一区二区三区免费版| 亚洲韩国一区二区三区| 欧美成人乱码一区二区三区| 亚洲片国产一区一级在线观看| 一本色道久久99精品综合| 欧美日韩久久不卡| 亚洲少妇在线| 久久不射中文字幕| 影音先锋久久资源网| 久久精品国产成人| 欧美激情综合五月色丁香小说| 99在线精品观看| 欧美亚洲免费高清在线观看| 国产亚洲激情视频在线| 亚洲黑丝在线| 欧美三级欧美一级| 欧美亚洲免费| 欧美国产先锋| 亚洲午夜在线观看| 久久亚洲精品一区| 亚洲精品免费观看| 香蕉久久久久久久av网站| 黄色国产精品一区二区三区| 日韩天堂在线视频| 国产精品久久7| 亚洲春色另类小说| 欧美日韩精品系列| 午夜欧美视频| 欧美好骚综合网| 亚洲欧美成人一区二区在线电影| 久久久久久久高潮| 99国产精品久久久久久久成人热 | 亚洲国产精品国自产拍av秋霞| 久久久精品国产一区二区三区| 亚洲国产精品久久久久婷婷884 | 麻豆国产精品一区二区三区| 亚洲乱码一区二区| 午夜一区不卡| 亚洲国产精品国自产拍av秋霞| 亚洲在线视频一区| 激情自拍一区| 亚洲欧美日本伦理| 亚洲电影免费在线观看| 午夜精品剧场| 亚洲国产视频一区| 欧美一区2区三区4区公司二百| 在线观看亚洲精品| 午夜视频一区| 亚洲伦理中文字幕| 久久亚洲美女| 亚洲淫性视频| 欧美久久九九| 久久精品道一区二区三区| 欧美日韩在线观看一区二区| 亚洲第一色中文字幕| 国产精品久久久久久久午夜片| 91久久在线| 国产一区二区精品丝袜| 亚洲一区二区三区三| 亚洲动漫精品|