一種基于粒子系統(tǒng)的圖片處理方法
【專利摘要】本發(fā)明公開了一種基于粒子系統(tǒng)的圖片處理方法,其通過加載粒子邊框所對應(yīng)的粒子配置文件,并根據(jù)配置文件的信息將粒子邊框與待處理圖片均渲染在數(shù)據(jù)緩存區(qū),使得圖片邊框更具多樣化,解決了傳統(tǒng)圖片邊框形式單一的問題,并且,所述粒子邊框的渲染過程中還可通過觸摸屏幕使粒子停止或繼續(xù)更新迭代,粒子邊框的渲染效果還可以進(jìn)行切換,使得用戶操作更方便。
【專利說明】一種基于粒子系統(tǒng)的圖片處理方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種圖片處理方法,特別是一種基于粒子系統(tǒng)的圖片處理方法。
【背景技術(shù)】
[0002]通常粒子系統(tǒng)在三維空間中的位置與運(yùn)動(dòng)是由發(fā)射器控制的,發(fā)射器主要由一組粒子行為參數(shù)以及在三維空間中的位置所表示,粒子行為參數(shù)可以包括粒子生成速度、粒子初始速度向量、粒子壽命、粒子顏色、在粒子生命周期中的變化以及其它參數(shù)等等。其使用大概值而不是絕對值的模糊參數(shù)占據(jù)全部或者絕大部分是很正常的,一些參數(shù)定義了中心值以及允許的變化。典型的粒子系統(tǒng)更新循環(huán)可以劃分為兩個(gè)不同的階段:參數(shù)更新/模擬階段以及渲染階段,每個(gè)循環(huán)執(zhí)行每一幀動(dòng)畫。
[0003]目前使用的粒子系統(tǒng)的主要是應(yīng)用在游戲場景和特效制作等虛擬場景中的火焰、云朵等因素;而我們在圖像處理過程中,對于圖像添加邊框的處理主要是添加一些已經(jīng)設(shè)計(jì)好的邊框,不同圖片使用一個(gè)設(shè)計(jì)好的邊框,得到的邊框樣式是單一的,而無法獲得不同的邊框樣式。
【發(fā)明內(nèi)容】
[0004]本發(fā)明為解決上述問題,提供了一種基于粒子系統(tǒng)為圖片添加特殊效果的邊框的圖片處理方法,其特征在于,包括以下步驟:
[0005]A.初始化渲染環(huán)境,創(chuàng)建渲染數(shù)據(jù)緩存區(qū)與顯示視圖;
[0006]B.加載待處理圖片;
[0007]C.加載粒子邊框所對應(yīng)的粒子配置文件;
[0008]D.根據(jù)配置文件的信息,將粒子邊框與待處理圖片均渲染在數(shù)據(jù)緩存區(qū),并將渲染后的數(shù)據(jù)顯示在視圖上;
[0009]E.確定粒子邊框的最終渲染效果,將渲染后的視圖保存到圖片上作為結(jié)果圖。
[0010]作為一種較佳實(shí)施例,所述步驟B中待處理圖片的格式為jpg格式、jpeg格式、bmp格式、png格式、wbmp格式以及gif格式里的每一幀的圖片數(shù)據(jù)的任意一種格式。
[0011]作為一種較佳實(shí)施例,所述粒子配置文件包括粒子生成速度、粒子初始速度向量、粒子壽命、粒子顏色、粒子形狀、粒子大小、粒子在生命周期中的變化等參數(shù)信息。
[0012]作為一種較佳實(shí)施例,所述步驟A中初始化渲染環(huán)境是指基于OpenGL ES平臺(tái)并利用OpenGL ES的開發(fā)語言與GLSL腳本創(chuàng)建渲染數(shù)據(jù)緩存區(qū)與顯示視圖。
[0013]作為一種較佳實(shí)施例,所述粒子邊框的渲染效果還可以進(jìn)行切換,其切換步驟如下:
[0014]Fl.暫停并刪除當(dāng)前粒子邊框所對應(yīng)的粒子配置文件;
[0015]F2.加載要切換的新粒子邊框所對應(yīng)的粒子配置文件;
[0016]F3.根據(jù)新粒子邊框的配置文件信息,將新粒子邊框與待處理圖片均渲染在數(shù)據(jù)緩存區(qū)。[0017]作為一種較佳實(shí)施例,所述粒了?邊框的渲染力‘法為:
[0018](1).當(dāng)用戶觸換屏說時(shí),停止粒子的更新迭代并保存m望的粒子狀態(tài):
[0019](2).當(dāng)用戶柯次觸投W?貓時(shí),則根椐上? ?次保存的粒子狀態(tài)繼續(xù)進(jìn)行粒子的史新 迭代;
[0020](3).當(dāng)用戶繼續(xù)點(diǎn)擊塀輅時(shí),則依次重鉍步驟(1)和步驟(2)。
[0021]作為一種較伴實(shí)施例,所述步驟K中確定粒子邊框的ili?終浪染效果,足指當(dāng)用戶 選定粒了?邊柄的伋終渲染效果時(shí),系統(tǒng)將待處理閣片與粒了?邊框氓新渲染到數(shù)椐緩存區(qū) 里,外從數(shù)椐緩存區(qū)M獲取數(shù)據(jù)將芄保存為閿片格式的數(shù)椐。
[0022]本發(fā)明的有益效果足:
[0023](1).通過加載粒了?邊椐所對應(yīng)的粒了?配評文件,并根據(jù)配艽文件的信息將粒了?邊 抿4待處理閿片均渲染在數(shù)椐緩存區(qū),使衍閣片邊椐更M?多樣化,解決了傳統(tǒng)閣片邊桐形 式單一的問題;
[0024](2).粒了?邊框的渲染效果還MJ以進(jìn)行切換,使得廣操作更方便;
[0025](3).所述粒子邊_的渲染過程中還可通過觸投屏狢使粒子停止成繼續(xù)更新迭代, 操作史方便。
【專利附圖】
【附圖說明】
[0026]此處所說明的附閣用來提供對本發(fā)明的進(jìn)?步現(xiàn)解,構(gòu)成木發(fā)明的?部分,木發(fā) 叨的示怠性實(shí)施例及其說明用于解釋木發(fā)明,并不構(gòu)成對木發(fā)明的不當(dāng)限定。在附閣中:
[0027]閿1為本發(fā)明駐于粒子系統(tǒng)的閣片處理方法的流程簡閿?!揪唧w實(shí)施方式】
[0028]為了使本發(fā)明所要解決的技術(shù)|V彳題、技術(shù)方案及有益效果更加沾楚、明白丨,以下結(jié) 合附閣及實(shí)施例對木發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)現(xiàn)解,此處所描述的具體實(shí)施例僅用 以解釋木發(fā)明,并不州于限定木發(fā)明。
[0029]如閿1所示,本發(fā)明的一種基于粒子系統(tǒng)的閿片處理方法,包括以下步驟:
[0030]A.初始化渲染環(huán)境,創(chuàng)述渲染數(shù)據(jù)緩存區(qū)與顯示視圖;
[0031]B.加載待處理圖片:
[0032]C.加載粒子邊框所對應(yīng)的粒子配置文件:
[0033]丨).根據(jù)配評文件的信息,將粒子邊框與待處觀閣片均渲染在數(shù)據(jù)緩存區(qū),并將渲 染后的數(shù)據(jù)顯示在視圖上
[0034]H.確定粒子邊框的最終渲染效果,將渲染括的視閣保存到圖片上作為結(jié)果圖。
[0035]本實(shí)施例中,所述步驟B屮待處理閣片的格式為jpg格式、jpeg格式、bmp格式、 png格式、wbmp格式以及gif格式祖的每一幀的閿片數(shù)據(jù)的任怠一種格式:所述粒了配H文 件包括粒子斗:成速度、粒+初始速度丨MS:、粒+壽命、粒子顏色、粒-戶形狀、粒+大小、粒子 在生命周期中的變化等參數(shù)信息;粒子系統(tǒng)可以僅由一組空間中的三維頂點(diǎn)組成,不像標(biāo) 淮的兒何對象,粒了?組成的系統(tǒng)不是辟態(tài)的,它們經(jīng)歷了一個(gè)完整的生命周期:粒子產(chǎn)生、 隨時(shí)間變化、然后死亡,通過調(diào)整彫響粒-Pk命周期的參數(shù),還可以創(chuàng)iJM響類型的效釆; 另一個(gè)關(guān)f粒f系統(tǒng)的關(guān)鍵點(diǎn)是粒子是混亂的,沒存在一個(gè)確定的路徑,每個(gè)粒子可以有一個(gè)更改它們行為的元素,成為一個(gè)隨機(jī)過程,這個(gè)隨機(jī)過程使效果看起來非常真實(shí)自然。
[0036]粒子系統(tǒng)的工作流程主要是以下3個(gè)步驟:
[0037]首先,定義好系統(tǒng)中粒子的結(jié)構(gòu),包括但不限于以下參數(shù):粒子的形狀、粒子當(dāng)前位置、粒子之前位置、當(dāng)前方向和速度、剩余存在時(shí)間、粒子當(dāng)前的顏色、粒子之前的顏色、顏色改變量、粒子當(dāng)前尺寸、粒子之前尺寸、尺寸改變量等等。
[0038]其次,還需要一個(gè)粒子發(fā)射器,它是在系統(tǒng)中負(fù)責(zé)創(chuàng)建粒子的實(shí)體,發(fā)射器主要用來控制粒子的數(shù)量、大體的發(fā)射方向以及其它全局設(shè)置。
[0039]最后,粒子產(chǎn)生后,還需要由粒子系統(tǒng)進(jìn)行處理,主要包括更新每個(gè)粒子以及渲染存活的粒子。
[0040]本實(shí)施例中,所述步驟A中初始化渲染環(huán)境是指基于OpenGL ES平臺(tái)并利用OpenGL ES的開發(fā)語言與GLSL腳本創(chuàng)建渲染數(shù)據(jù)緩存區(qū)與顯示視圖;主要是利用GLSL腳本渲染步驟B中加載的待處理圖片數(shù)據(jù),接著利用粒子系統(tǒng)進(jìn)行更新粒子結(jié)構(gòu)里的參數(shù)的值,最終再將其渲染后的數(shù)據(jù)顯示在視圖上。
[0041]為使用戶操作更方便,所述粒子邊框的渲染效果還可以進(jìn)行切換,其切換步驟如下:
[0042]Fl.暫停并刪除當(dāng)前粒子邊框所對應(yīng)的粒子配置文件;
[0043]F2.加載要切換的新粒子邊框所對應(yīng)的粒子配置文件;
[0044]F3.根據(jù)新粒子邊框的配置文件信息,將新粒子邊框與待處理圖片均渲染在數(shù)據(jù)緩存區(qū)。
[0045]本實(shí)施例中,所述粒子邊框的渲染方法為:
[0046](I).當(dāng)用戶觸摸屏幕時(shí),停止粒子的更新迭代并保存當(dāng)前的粒子狀態(tài);
[0047](2).當(dāng)用戶再次觸摸屏幕時(shí),則根據(jù)上一次保存的粒子狀態(tài)繼續(xù)進(jìn)行粒子的更新迭代,保證同一配置文件的多樣性;
[0048](3).當(dāng)用戶繼續(xù)點(diǎn)擊屏幕時(shí),則依次重復(fù)步驟⑴和步驟⑵。
[0049]所述步驟E中確定粒子邊框的最終渲染效果,是指當(dāng)用戶選定粒子邊框的最終渲染效果時(shí),系統(tǒng)將待處理圖片與粒子邊框重新渲染到數(shù)據(jù)緩存區(qū)里,并從數(shù)據(jù)緩存區(qū)里獲取數(shù)據(jù)將其保存為圖片格式的數(shù)據(jù);具體是,當(dāng)用戶手離開屏幕,粒子停止更新迭代后,若用戶對當(dāng)前的邊框效果滿意,則點(diǎn)擊按鈕表達(dá)滿意當(dāng)前效果,希望將當(dāng)前效果保存在加載的圖片上,然后系統(tǒng)將待處理圖片與粒子邊框重新渲染到數(shù)據(jù)緩存區(qū)里,并從數(shù)據(jù)緩存區(qū)里獲取數(shù)據(jù)并將其保存為圖片格式的數(shù)據(jù),最后將獲取到的圖片數(shù)據(jù)返回給用戶。
[0050]具體操作方法如下:
[0051]1、加載待處理的圖片X ;
[0052]2、點(diǎn)擊粒子邊框Y的按鈕,系統(tǒng)自動(dòng)加載粒子配置文件,并根據(jù)配置文件的信息進(jìn)行粒子的渲染;
[0053]3、當(dāng)用戶點(diǎn)擊切換成粒子邊框W時(shí),則系統(tǒng)等待當(dāng)前一幀渲染結(jié)束,暫停并刪除當(dāng)前的粒子系統(tǒng),接著加載粒子邊框W的配置文件,繼續(xù)將待處理圖片與切換后的粒子邊框W的粒子進(jìn)行渲染;
[0054]4、當(dāng)用戶點(diǎn)擊屏幕時(shí),則暫停當(dāng)前的粒子配置文件的渲染;
[0055]5、當(dāng)用戶點(diǎn)擊確定功能時(shí),則將待處理圖片與當(dāng)前的粒子邊框進(jìn)行最終的渲染,并渲染到數(shù)據(jù)緩存區(qū)里,最后從數(shù)據(jù)緩存區(qū)里獲取數(shù)據(jù)并將其保存為圖片格式的數(shù)據(jù),最后將獲取到的圖片數(shù)據(jù)返回給用戶。
[0056]上述說明示出并描述了本發(fā)明的優(yōu)選實(shí)施例,如前,應(yīng)當(dāng)理解本發(fā)明并非局限于本文所披露的形式,不應(yīng)看作是對其他實(shí)施例的排除,而可用于各種其他組合、修改和環(huán)境,并能夠在本文發(fā)明構(gòu)想范圍內(nèi),通過上述教導(dǎo)或相關(guān)領(lǐng)域的技術(shù)或知識(shí)進(jìn)行改動(dòng)。而本領(lǐng)域人員所進(jìn)行的改動(dòng)和變化不脫離本發(fā)明的精神和范圍,則都應(yīng)在本發(fā)明所附權(quán)利要求的保護(hù)范圍內(nèi)。
【權(quán)利要求】
1.一種基于粒子系統(tǒng)的圖片處理方法,其特征在于,包括以下步驟:A.初始化渲染環(huán)境,創(chuàng)建渲染數(shù)據(jù)緩存區(qū)與顯示視圖;B.加載待處理圖片;C.加載粒子邊框所對應(yīng)的粒子配置文件;D.根據(jù)配置文件的信息,將粒子邊框與待處理圖片均渲染在數(shù)據(jù)緩存區(qū),并將渲染后 的數(shù)據(jù)顯示在視圖上;E.確定粒子邊框的最終渲染效果,將渲染后的視圖保存到圖片上作為結(jié)果圖。
2.根據(jù)權(quán)利要求1所述的一種基于粒子系統(tǒng)的圖片處理方法,其特征在于:所述步驟B 中待處理圖片的格式為jpg格式、jpeg格式、bmp格式、png格式、wbmp格式以及gif格式 里的每一幀的圖片數(shù)據(jù)的任意一種格式。
3.根據(jù)權(quán)利要求1所述的一種基于粒子系統(tǒng)的圖片處理方法,其特征在于:所述粒子 配置文件包括粒子生成速度、粒子初始速度向量、粒子壽命、粒子顏色、粒子形狀、粒子大 小、粒子在生命周期中的變化等參數(shù)信息。
4.根據(jù)權(quán)利要求1所述的一種基于粒子系統(tǒng)的圖片處理方法,其特征在于:所述步驟A 中初始化渲染環(huán)境是指基于OpenGL ES平臺(tái)并利用OpenGL ES的開發(fā)語言與GLSL腳本創(chuàng) 建渲染數(shù)據(jù)緩存區(qū)與顯示視圖。
5.根據(jù)權(quán)利要求1或2或3或4所述的一種基于粒子系統(tǒng)的圖片處理方法,其特征在 于:所述粒子邊框的渲染效果還可以進(jìn)行切換,其切換步驟如下:F1.暫停并刪除當(dāng)前粒子邊框所對應(yīng)的粒子配置文件;F2.加載要切換的新粒子邊框所對應(yīng)的粒子配置文件;F3.根據(jù)新粒子邊框的配置文件信息,將新粒子邊框與待處理圖片均渲染在數(shù)據(jù)緩存區(qū)。
6.根據(jù)權(quán)利要求1或2或3或4所述的一種基于粒子系統(tǒng)的圖片處理方法,其特征在 于:所述粒子邊框的渲染方法為:(1).當(dāng)用戶觸摸屏幕時(shí),停止粒子的更新迭代并保存當(dāng)前的粒子狀態(tài);(2).當(dāng)用戶再次觸摸屏幕時(shí),則根據(jù)上一次保存的粒子狀態(tài)繼續(xù)進(jìn)行粒子的更新迭代;(3).當(dāng)用戶繼續(xù)點(diǎn)擊屏幕時(shí),則依次重復(fù)步驟⑴和步驟(2)。
7.根據(jù)權(quán)利要求1所述的一種基于粒子系統(tǒng)的圖片處理方法,其特征在于:所述步驟 E中確定粒子邊框的最終渲染效果,是指當(dāng)用戶選定粒子邊框的最終渲染效果時(shí),系統(tǒng)將待 處理圖片與粒子邊框重新渲染到數(shù)據(jù)緩存區(qū)里,并從數(shù)據(jù)緩存區(qū)里獲取數(shù)據(jù)將其保存為圖 片格式的數(shù)據(jù)。
【文檔編號(hào)】G06T15/00GK103544730SQ201310491791
【公開日】2014年1月29日 申請日期:2013年10月18日 優(yōu)先權(quán)日:2013年10月18日
【發(fā)明者】張偉, 傅松林, 葉志鴻, 張長定 申請人:廈門美圖網(wǎng)科技有限公司