




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第利用Matlab一鍵生成工地海報特效目錄1.使用效果2.圖片準備和導入3.圖像傾斜4.扭曲置換5.正交疊底6.緣修整(摳圖)7.背景圖像替換8.完整代碼
1.使用效果
這篇的本質(zhì)還是扭曲置換,其實看過前面幾篇文章的應該都能猜出是怎樣做到的,下面開始講解:
2.圖片準備和導入
首先m文件所在文件夾內(nèi)應該有如下兩張圖:
此外還需要一張近似方形的圖片也要一起放在文件夾中,之后通過以下代碼導入和初步處理圖片(選擇幕布部分和去色代碼,可左右滑動):
bkgPic=imread('bkg.jpg');%背景圖
screenPic=bkgPic(190:555,(190:555)+160,:);%幕布區(qū)域圖片
grayscreenPic=rgb2gray(screenPic);%灰度化幕布區(qū)域圖片
screenRange=imread('screenRange.jpg');%幕布范圍圖(用來扣幕布邊緣細節(jié))
screenRange=rgb2gray(screenRange);
forePic=imread('2048.jpg');%要做成海報的圖片
3.圖像傾斜
我們可以看出幕布是有些傾斜的,我們?yōu)榱俗寛D片和幕布更加貼近,我們將圖片進行傾斜處理并將其調(diào)整至與幕布區(qū)域相似的大?。?/p>
%前景圖片變形=============================================================
tform=affine2d([1-0.020;-0.0210;001]);
forePic=imwarp(forePic,tform);
exforePic=imresize(forePic,size(grayscreenPic)+26);
4.扭曲置換
這部分參考之前布料貼圖的部分呀:
%扭曲置換=================================================================
fori=1:size(grayscreenPic,1)
forj=1:size(grayscreenPic,2)
goffset=(double(grayscreenPic(i,j))-128)/10;
offsetLim1=floor(goffset)+13;
offsetLim2=ceil(goffset)+13;
sep1=goffset-floor(goffset);
sep2=ceil(goffset)-goffset;
c1=double(exforePic(i+offsetLim1,j+offsetLim1,:));
c2=double(exforePic(i+offsetLim2,j+offsetLim2,:));
ifsep1==0
c=double(exforePic(i+offsetLim1,j+offsetLim1,:));
else
c=c2.*sep1+c1.*sep2;
newforePic(i,j,:)=c;
end
5.正交疊底
%正交疊底=================================================================
newforePic=uint8((double(newforePic).*double(grayscreenPic))./220);
%imshow(newforePic)
%舊版本的用下面這段代碼
%newforePicR=double(newforePic(:,:,1)).*double(grayscreenPic)./220;
%newforePicG=double(newforePic(:,:,2)).*double(grayscreenPic)./220;
%newforePicB=double(newforePic(:,:,3)).*double(grayscreenPic)./220;
%newforePic(:,:,1)=newforePicR;
%newforePic(:,:,2)=newforePicG;
%newforePic(:,:,3)=newforePicB;
%newforePic=uint8(newforePic);
6.緣修整(摳圖)
上方正交疊底后,幕布外面還是灰色,而且幕布內(nèi)容部分超出幕布范圍,我們可以用幕布范圍圖修整幕布:
%邊緣修整=================================================================
screenPicR=screenPic(:,:,1);newforePicR=newforePic(:,:,1);
screenPicG=screenPic(:,:,2);newforePicG=newforePic(:,:,2);
screenPicB=screenPic(:,:,3);newforePicB=newforePic(:,:,3);
screenPicR(screenRange20)=newforePicR(screenRange
screenPicG(screenRange20)=newforePicG(screenRange
screenPicB(screenRange20)=newforePicB(screenRange
screenPic(:,:,1)=screenPicR;
screenPic(:,:,2)=screenPicG;
screenPic(:,:,3)=screenPicB;
screenPic=uint8(screenPic);
7.背景圖像替換
%將背景圖幕布區(qū)域換為新圖=================================================
bkgPic(190:555,(190:555)+160,:)=screenPic;
imshow(bkgPic)
8.完整代碼
functionconsPoster
bkgPic=imread('bkg.jpg');%背景圖
screenPic=bkgPic(190:555,(190:555)+160,:);%幕布區(qū)域圖片
grayscreenPic=rgb2gray(screenPic);%灰度化幕布區(qū)域圖片
screenRange=imread('screenRange.jpg');%幕布范圍圖(用來扣幕布邊緣細節(jié))
screenRange=rgb2gray(screenRange);
forePic=imread('2048.jpg');%要做成海報的圖片
%前景圖片變形=============================================================
tform=affine2d([1-0.020;-0.0210;001]);
forePic=imwarp(forePic,tform);
exforePic=imresize(forePic,size(grayscreenPic)+26);
%扭曲置換=================================================================
fori=1:size(grayscreenPic,1)
forj=1:size(grayscreenPic,2)
goffset=(double(grayscreenPic(i,j))-128)/10;
offsetLim1=floor(goffset)+13;
offsetLim2=ceil(goffset)+13;
sep1=goffset-floor(goffset);
sep2=ceil(goffset)-goffset;
c1=double(exforePic(i+offsetLim1,j+offsetLim1,:));
c2=double(exforePic(i+offsetLim2,j+offsetLim2,:));
ifsep1==0
c=double(exforePic(i+offsetLim1,j+offsetLim1,:));
else
c=c2.*sep1+c1.*sep2;
newforePic(i,j,:)=c;
%正交疊底=================================================================
newforePic=uint8((double(newforePic).*double(grayscreenPic))./220);
%imshow(newforePic)
%舊版本的用下面這段代碼
%newforePicR=double(newforePic(:,:,1)).*double(grayscreenPic)./220;
%newforePicG=double(newforePic(:,:,2)).*double(grayscreenPic)./220;
%newforePicB=double(newforePic(:,:,3)).*double(grayscreenPic)./220;
%newforePic(:,:,1)=newforePicR;
%newforePic(:,:,2)=newforePicG;
%newforePic(:,:,3)=newforePicB;
%newforePic=uint8(newforePic);
%邊緣修整=================================================================
screenPicR=screenPic(:,:,1);newforePicR=newforePic(:,:,1);
screenPicG=screenPic(:,:,2);newforePicG=newforePic(:,:,2);
screenPicB=screenPic(:,:,3);newforePicB=newforePic(:,:,3);
screenPicR(screenRange20)=newforePicR(screenRange
screenPicG(screenRange20)=newforePicG(screenRange
screenPicB(screenRange20)=newforePicB(screenRange
screenPic(:,:,1)=screenPicR;
screenPic(:,:,2)=screenPicG;
screenPic(:,:,3)=screenPicB;
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 公交優(yōu)先發(fā)展戰(zhàn)略下2025年城市交通擁堵治理的擁堵區(qū)域精準治理報告
- 鄭州財稅金融職業(yè)學院《統(tǒng)計分析方法》2023-2024學年第一學期期末試卷
- 公共交通優(yōu)化:2025年智慧交通流量預測技術(shù)應用前景報告
- 山西運城農(nóng)業(yè)職業(yè)技術(shù)學院《大學生社交禮儀》2023-2024學年第一學期期末試卷
- 四川長江職業(yè)學院《裝飾工程計量與計價》2023-2024學年第一學期期末試卷
- 杭州職業(yè)技術(shù)學院《高級日語》2023-2024學年第一學期期末試卷
- 江漢藝術(shù)職業(yè)學院《生態(tài)文明》2023-2024學年第一學期期末試卷
- 公路客運行業(yè)2025年轉(zhuǎn)型升級與無障礙出行服務研究報告
- 公路客運行業(yè)轉(zhuǎn)型升級與新能源汽車推廣應用研究報告
- 知行合一-王陽明傳奇課件
- 鍋爐澆注料施工方案
- GB/T 17394.1-2014金屬材料里氏硬度試驗第1部分:試驗方法
- GB/T 1606-2008工業(yè)碳酸氫鈉
- 葛的栽培技術(shù)
- 《綠色建筑概論》整套教學課件
- 山東中醫(yī)藥大學2020-2021學年內(nèi)科護理學試題及答案2
- 2022年綿陽江油市社區(qū)工作者招聘考試模擬試題及答案解析
- 初中道德與法治學科教學經(jīng)驗交流
- 工程測量、定位放線控制點復核記錄表
- 申辦出入境證件的函
評論
0/150
提交評論