一種視頻處理方法及移動終端的制作方法
【專利摘要】本發(fā)明實(shí)施例公開了一種視頻處理方法及移動終端,該視頻處理方法包括:接收并緩存第一原始視頻數(shù)據(jù)的所有幀數(shù)據(jù);根據(jù)所述緩存的第一原始視頻數(shù)據(jù)的所有幀數(shù)據(jù),確定所述第一原始視頻數(shù)據(jù)的所有幀數(shù)據(jù)之間的數(shù)據(jù)差異程度;根據(jù)所述確定的數(shù)據(jù)差異程度,調(diào)整所述第一原始視頻數(shù)據(jù)的數(shù)據(jù)幀,獲取第二視頻數(shù)據(jù)。本發(fā)明實(shí)施例還提供一種相應(yīng)的移動終端。本發(fā)明實(shí)施例提供的視頻處理方法通過確定視頻幀數(shù)據(jù)之間的數(shù)據(jù)差異程度,選擇性的進(jìn)行了抽幀和/或插幀處理,沒有破壞視頻幀數(shù)據(jù)運(yùn)動的軌跡,提高了視頻播放的流暢性。
【專利說明】
一種視頻處理方法及移動終端
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及視頻處理領(lǐng)域,特別是涉及一種視頻處理方法及移動終端。
【背景技術(shù)】
[0002]目前人們對于視頻的流暢性要求越來越高,但是我們目前看到的視頻由于帶寬、大小,播放設(shè)備等限制都是進(jìn)行了抽幀處理,因此我們一般看到的都只有15幀,24幀,25幀,或30幀的視頻幀率,這樣的幀率和原始拍攝的視頻相比流暢性降低了很多。比如電影原本拍攝的都是60幀每秒,但實(shí)際上我們看到的高清電影一般就只有30幀了,就是每隔一幀就抽掉了一幀。并且現(xiàn)在的抽幀做法基本都是等間隔進(jìn)行的。
[0003]由于這樣的抽幀并沒有考慮視頻內(nèi)容變化的快慢,這樣就造成了當(dāng)視頻場景變化很快的時(shí)候看起來就特別不流暢,幀率越低的時(shí)候越明顯。而現(xiàn)在優(yōu)化視頻流暢性采用的插幀方法,就是通過比較兩幀之間的差異,預(yù)判它的運(yùn)動軌跡然后插入相應(yīng)的內(nèi)容?,F(xiàn)在的抽幀方法對于場景變化很慢的內(nèi)容沒有大的影響,但對于場景變化很快的內(nèi)容就會加大他們之間的差異導(dǎo)致無法很好預(yù)判它的發(fā)展趨勢,因此終端在進(jìn)行流暢性優(yōu)化時(shí)所采用的插幀效果也不明顯。
【發(fā)明內(nèi)容】
[0004]本發(fā)明實(shí)施例提供一種視頻處理方法,用以解決現(xiàn)有技術(shù)中視頻固定間隔的抽幀處理方法中未考慮視頻內(nèi)容變化的快慢,無法對視頻內(nèi)容的發(fā)展趨勢進(jìn)行很好的預(yù)判,從而破壞了場景的發(fā)展趨勢的問題,提高了視頻播放的流暢性的問題。
[0005]本發(fā)明實(shí)施例提供一種視頻處理方法,包括:
[0006]接收并緩存第一原始視頻數(shù)據(jù)的所有幀數(shù)據(jù);
[0007]根據(jù)所述緩存的第一原始視頻數(shù)據(jù)的所有幀數(shù)據(jù),確定所述第一原始視頻數(shù)據(jù)的所有幀數(shù)據(jù)之間的數(shù)據(jù)差異程度;
[0008]根據(jù)所述確定的數(shù)據(jù)差異程度,調(diào)整所述第一原始視頻數(shù)據(jù)的數(shù)據(jù)幀,獲取第二視頻數(shù)據(jù)。
[0009]本發(fā)明實(shí)施例還提供一種移動終端,包括:
[0010]第一接收緩存模塊,用于接收并緩存第一原始視頻數(shù)據(jù)的所有幀數(shù)據(jù);
[0011]第一差異確定模塊,用于確根據(jù)所述緩存的第一原始視頻數(shù)據(jù)的所有幀數(shù)據(jù),確定所述第一原始視頻數(shù)據(jù)的所有幀數(shù)據(jù)之間的數(shù)據(jù)差異程度;
[0012]第一執(zhí)行處理模塊,用于根據(jù)所述確定的數(shù)據(jù)差異程度,調(diào)整所述第一原始視頻數(shù)據(jù)的數(shù)據(jù)幀,獲取第二視頻數(shù)據(jù)。
[0013]本發(fā)明實(shí)施例提供的視頻處理方法,接收并緩存第一原始視頻數(shù)據(jù)的所有幀數(shù)據(jù);根據(jù)緩存的第一原始視頻數(shù)據(jù)的所有幀數(shù)據(jù),確定所述第一原始視頻數(shù)據(jù)的所有幀數(shù)據(jù)之間的數(shù)據(jù)差異程度;根據(jù)確定的數(shù)據(jù)差異程度,調(diào)整第一原始視頻數(shù)據(jù)的數(shù)據(jù)幀,獲取第二視頻數(shù)據(jù);對視頻進(jìn)行了選擇性的抽幀和/或插幀處理,沒有破壞視頻數(shù)據(jù)運(yùn)動的軌跡,提高了視頻播放的流暢性。
【附圖說明】
[0014]圖1A為本發(fā)明視頻處理方法的實(shí)施例流程圖;
[0015]圖1B為本發(fā)明確定第一原始視頻數(shù)據(jù)的所有幀數(shù)據(jù)之間的數(shù)據(jù)差異程度的方法的實(shí)施例流程圖;
[0016]圖1C為本發(fā)明調(diào)整所述第一原始視頻數(shù)據(jù)的數(shù)據(jù)幀的第一實(shí)施例流程圖;
[0017]圖1D為本發(fā)明調(diào)整所述第一原始視頻數(shù)據(jù)的數(shù)據(jù)幀的第二實(shí)施例流程圖;
[0018]圖1E為本發(fā)明調(diào)整所述第一原始視頻數(shù)據(jù)的數(shù)據(jù)幀的第三實(shí)施例流程圖;
[0019]圖2A為本發(fā)明移動終端的第一實(shí)施例結(jié)構(gòu)示意圖;
[0020]圖2B為本發(fā)明移動終端的第二實(shí)施例結(jié)構(gòu)示意圖;
[0021]圖2C為本發(fā)明移動終端的第三實(shí)施例結(jié)構(gòu)示意圖;
[0022]圖3為本發(fā)明視頻處理方法的幀數(shù)據(jù)僅進(jìn)行抽幀處理的一種具體實(shí)施過程的示意圖;
[0023]圖4為本發(fā)明視頻處理方法的幀數(shù)據(jù)僅進(jìn)行插幀處理的一種具體實(shí)施過程的示意圖;
[0024]圖5為本發(fā)明視頻處理方法的幀數(shù)據(jù)進(jìn)行抽幀和插幀處理的一種具體實(shí)施過程的示意圖。
【具體實(shí)施方式】
[0025]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0026]本發(fā)明針對現(xiàn)有技術(shù)中視頻固定間隔的抽幀處理方法中未考慮視頻內(nèi)容變化的快慢,無法對視頻內(nèi)容的發(fā)展趨勢進(jìn)行很好的預(yù)判,從而破壞了場景的發(fā)展趨勢的問題,提供一種視頻處理方法及移動終端,通過計(jì)算視頻幀數(shù)據(jù)之間的數(shù)據(jù)差異值,對視頻幀數(shù)據(jù)進(jìn)行了選擇性的抽幀和/或插幀處理,沒有破壞視頻幀數(shù)據(jù)運(yùn)動的軌跡,提高了視頻播放的流暢性。
[0027]第一實(shí)施例:
[0028]如圖1所示,本發(fā)明實(shí)施例提供一種視頻處理方法,包括:
[0029]步驟101,接收并緩存第一原始視頻數(shù)據(jù)的所有幀數(shù)據(jù)。
[0030]該步驟中,接收待處理的第一原始視頻數(shù)據(jù),并緩存所接收的第一原始視頻數(shù)據(jù)的所有幀數(shù)據(jù),每幀數(shù)據(jù)對應(yīng)一張圖片。
[0031]步驟102,根據(jù)所述緩存的第一原始視頻數(shù)據(jù)的所有幀數(shù)據(jù),確定所述第一原始視頻數(shù)據(jù)的所有幀數(shù)據(jù)之間的數(shù)據(jù)差異程度。
[0032]該步驟可以進(jìn)一步包括:
[0033]步驟1021,依次提取所述緩存的所述第一原始視頻數(shù)據(jù)的相鄰兩幀數(shù)據(jù);
[0034]這里,可以按照流水線處理的方式,對緩存中保存的第一原始視頻數(shù)據(jù)進(jìn)行提取和處理。
[0035]步驟1022,計(jì)算所述相鄰兩幀數(shù)據(jù)之間的數(shù)據(jù)差異值;
[0036]這里,所述數(shù)據(jù)差異值包括相鄰兩幀數(shù)據(jù)之間的不同像素點(diǎn)的個(gè)數(shù)、相鄰兩幀數(shù)據(jù)之間每個(gè)像素點(diǎn)RGB分量的第一數(shù)據(jù)差異值或相鄰兩幀數(shù)據(jù)之間的不同像素區(qū)域的個(gè)數(shù)。
[0037]這里,計(jì)算所述相鄰兩幀數(shù)據(jù)之間的數(shù)據(jù)差異值可以采用現(xiàn)有技術(shù)中的已有算法,實(shí)現(xiàn)對相鄰幀數(shù)據(jù)之間的差異值的計(jì)算,為節(jié)約篇幅,此處不再贅述。
[0038]步驟1023,根據(jù)所述計(jì)算出的數(shù)據(jù)差異值,確定所述相鄰兩幀數(shù)據(jù)的數(shù)據(jù)差異程度。
[0039]例如,當(dāng)采用相鄰兩幀數(shù)據(jù)之間的不同像素點(diǎn)的個(gè)數(shù)作為所述數(shù)據(jù)差異值時(shí),可以比較相鄰兩幀數(shù)據(jù)中對應(yīng)的像素點(diǎn),判斷對應(yīng)的像素點(diǎn)的數(shù)據(jù)是否相同,并根據(jù)判斷的結(jié)果,獲得相鄰兩幀數(shù)據(jù)之間的不同像素點(diǎn)的個(gè)數(shù)。
[0040]再例如,當(dāng)采用相鄰兩幀數(shù)據(jù)之間每個(gè)像素點(diǎn)RGB分量的第一數(shù)據(jù)差異值作為所述數(shù)據(jù)差異值時(shí),具體可以是:比較相鄰兩幀數(shù)據(jù)中對應(yīng)的像素點(diǎn)的對應(yīng)RGB分量的數(shù)據(jù)差異,將比較得到的所有RGB分量的數(shù)據(jù)差異進(jìn)行求和計(jì)算,將計(jì)算得到的和值,作為所述數(shù)據(jù)差異值。
[0041]又例如,當(dāng)采用相鄰兩幀數(shù)據(jù)之間的不同像素區(qū)域的個(gè)數(shù)作為所述數(shù)據(jù)差異值時(shí),具體可以是:將幀數(shù)據(jù)對應(yīng)的整個(gè)圖像劃分為預(yù)定大小的預(yù)定像素區(qū)域,比較相鄰兩個(gè)幀數(shù)據(jù)之間對應(yīng)的像素區(qū)域,確定相鄰兩個(gè)幀數(shù)據(jù)之間不同像素區(qū)域的個(gè)數(shù)。其中,兩個(gè)像素區(qū)域是否相同,可以依據(jù)兩個(gè)像素區(qū)域中不同像素點(diǎn)的個(gè)數(shù)是否超出預(yù)設(shè)的閾值,當(dāng)超出該閾值時(shí),則認(rèn)為該兩個(gè)像素區(qū)域不同。
[0042]步驟103,根據(jù)所述確定的數(shù)據(jù)差異程度,調(diào)整所述第一原始視頻數(shù)據(jù)的數(shù)據(jù)幀,獲取第二視頻數(shù)據(jù)。
[0043]本發(fā)明上述實(shí)施例中,可以對原始視頻數(shù)據(jù)僅進(jìn)行抽幀處理,所述步驟103可以進(jìn)一步包括:
[0044]步驟1031,將所述計(jì)算出的數(shù)據(jù)差異值與預(yù)設(shè)閾值進(jìn)行比較。
[0045]所述預(yù)設(shè)閾值為一幀數(shù)據(jù)像素總數(shù)的K%,其中,K大于等于15,且K小于等于70,所述預(yù)設(shè)閾值可以是現(xiàn)有技術(shù)中通過應(yīng)用程序設(shè)置的,當(dāng)然也可以是從新的技術(shù)中得到該預(yù)設(shè)閾值。
[0046]步驟1032,當(dāng)所述數(shù)據(jù)差異值大于所述預(yù)設(shè)閾值時(shí),保留所述相鄰兩幀數(shù)據(jù)。
[0047]當(dāng)所述數(shù)據(jù)差異值大于所述預(yù)設(shè)閾值時(shí),說明該相鄰兩數(shù)據(jù)幀的幀數(shù)據(jù)數(shù)據(jù)內(nèi)容差異較大,若抽取其中任何一幀會造成最后得到的第二視頻數(shù)據(jù)播放不流暢,所以在所述數(shù)據(jù)差異值大于所述預(yù)設(shè)閾值時(shí),保留所述相鄰兩幀數(shù)據(jù)。
[0048]步驟1033,當(dāng)所述數(shù)據(jù)差異值小于或等于所述預(yù)設(shè)閾值時(shí),對所述相鄰兩幀數(shù)據(jù)進(jìn)行抽幀處理。
[0049]當(dāng)所述數(shù)據(jù)差異值小于或等于所述預(yù)設(shè)閾值時(shí),說明該相鄰兩數(shù)據(jù)幀的幀數(shù)據(jù)內(nèi)容差異不大或沒有差異,若抽取其中任何一幀不會造成最后得到的第二視頻數(shù)據(jù)播放不流暢,所以在所述數(shù)據(jù)差異值小于或等于所述預(yù)設(shè)閾值時(shí),對所述相鄰兩幀數(shù)據(jù)進(jìn)行抽幀處理。
[0050]本發(fā)明上述實(shí)施例中,可以對原始視頻數(shù)據(jù)僅進(jìn)行插幀處理,所述步驟103可以進(jìn)一步包括:
[0051]步驟1041,將所述計(jì)算出的數(shù)據(jù)差異值與預(yù)設(shè)閾值進(jìn)行比較。
[0052]所述預(yù)設(shè)閾值為一幀數(shù)據(jù)像素總數(shù)的K%,其中,K大于等于15,且K小于等于70,所述預(yù)設(shè)閾值可以是現(xiàn)有技術(shù)中通過應(yīng)用程序設(shè)置的,當(dāng)然也可以是從新的技術(shù)中得到該預(yù)設(shè)閾值。
[0053]步驟1042,當(dāng)所述數(shù)據(jù)差異值大于所述預(yù)設(shè)閾值時(shí),對所述相鄰兩幀數(shù)據(jù)進(jìn)行插幀處理。
[0054]當(dāng)所述數(shù)據(jù)差異值大于所述預(yù)設(shè)閾值時(shí),說明該相鄰兩數(shù)據(jù)幀的幀數(shù)據(jù)數(shù)據(jù)內(nèi)容差異較大,若不作處理,在最后得到的第二視頻數(shù)據(jù)播放時(shí)會出現(xiàn)不流暢現(xiàn)象;若在該相鄰兩數(shù)據(jù)幀之間插入一幀或多幀過渡幀,可以使最后得到的第二視頻數(shù)據(jù)流暢地播放;所以在所述數(shù)據(jù)差異值大于所述預(yù)設(shè)閾值時(shí),對所述相鄰兩數(shù)據(jù)幀進(jìn)行插幀處理。
[0055]步驟1043,當(dāng)所述數(shù)據(jù)差異值小于或等于所述預(yù)設(shè)閾值時(shí),保留所述相鄰兩幀數(shù)據(jù)。
[0056]當(dāng)所述數(shù)據(jù)差異值小于或等于所述預(yù)設(shè)閾值時(shí),說明該相鄰兩數(shù)據(jù)幀的幀數(shù)據(jù)數(shù)據(jù)內(nèi)容差異不大或沒有差異,在最后得到的第二視頻數(shù)據(jù)播放時(shí)不會出現(xiàn)不流暢現(xiàn)象;所以在所述數(shù)據(jù)差異值小于或等于所述預(yù)設(shè)閾值時(shí),可以保留所述相鄰兩數(shù)據(jù)幀。
[0057]本發(fā)明上述實(shí)施例中,可以對原始視頻數(shù)據(jù)進(jìn)行插幀和抽幀處理,所述步驟103可以進(jìn)一步包括:
[0058]步驟1051,將所述計(jì)算出的數(shù)據(jù)差異值與預(yù)設(shè)閾值進(jìn)行比較。
[0059]所述預(yù)設(shè)閾值為一幀數(shù)據(jù)像素總數(shù)的Κ%,其中,K大于等于15,且K小于等于70,所述預(yù)設(shè)閾值可以是現(xiàn)有技術(shù)中通過應(yīng)用程序設(shè)置的,當(dāng)然也可以是從新的技術(shù)中得到該預(yù)設(shè)閾值。
[0060]步驟1052,當(dāng)所述數(shù)據(jù)差異值大于所述預(yù)設(shè)閾值時(shí),對所述相鄰兩幀數(shù)據(jù)進(jìn)行插幀處理。
[0061]當(dāng)所述數(shù)據(jù)差異值大于所述預(yù)設(shè)閾值時(shí),說明該相鄰兩數(shù)據(jù)幀的幀數(shù)據(jù)內(nèi)容差異較大,若不作處理,在最后得到的第二視頻數(shù)據(jù)播放時(shí)會出現(xiàn)不流暢現(xiàn)象;若在該相鄰兩數(shù)據(jù)幀之間插入一幀或多幀過渡幀,可以使最后得到的第二視頻數(shù)據(jù)流暢地播放;所以在所述數(shù)據(jù)差異值大于所述預(yù)設(shè)閾值時(shí),對所述相鄰兩數(shù)據(jù)幀進(jìn)行插幀處理。
[0062]步驟1053,當(dāng)所述數(shù)據(jù)差異值小于或等于所述預(yù)設(shè)閾值時(shí),對所述相鄰兩幀數(shù)據(jù)進(jìn)行抽幀處理。
[0063]當(dāng)所述數(shù)據(jù)差異值小于或等于所述預(yù)設(shè)閾值時(shí),說明該相鄰兩數(shù)據(jù)幀的幀數(shù)據(jù)內(nèi)容差異不大或沒有差異,若抽取其中任何一幀不會造成最后得到的第二視頻數(shù)據(jù)播放不流暢,所以在所述數(shù)據(jù)差異值小于或等于所述預(yù)設(shè)閾值時(shí),對所述相鄰兩數(shù)據(jù)幀進(jìn)行抽幀處理。
[0064]本發(fā)明的上述實(shí)施例的視頻處理方法,通過確定緩存的第一原始視頻數(shù)據(jù)中幀數(shù)據(jù)之間的差異程度,調(diào)整第一原始視頻的幀數(shù)據(jù),對第一原始視頻數(shù)據(jù)中的幀數(shù)據(jù)進(jìn)行選擇性的抽幀和/或插幀處理,沒有破壞第一原始視頻數(shù)據(jù)中的幀數(shù)據(jù)運(yùn)動的軌跡,提高了視頻播放的流暢性。
[0065]第二實(shí)施例:
[0066]如圖2所示,為本發(fā)明實(shí)施例移動終端的第一實(shí)施例結(jié)構(gòu)示意圖,本發(fā)明實(shí)施例還提供一種移動終端,包括:
[0067]第一接收緩存模塊201,用于接收并緩存第一原始視頻數(shù)據(jù)的所有幀數(shù)據(jù)。
[0068]第一差異確定模塊202,用于根據(jù)所述緩存的第一原始視頻數(shù)據(jù)的所有幀數(shù)據(jù),確定所述第一原始視頻數(shù)據(jù)的所有幀數(shù)據(jù)之間的數(shù)據(jù)差異程度。
[0069]所述第一差異確定模塊202還包括:
[0070]第一提取子模塊,用于依次提取所述緩存的所述第一原始視頻數(shù)據(jù)的相鄰兩幀數(shù)據(jù);
[0071]這里,可以按照流水線處理的方式,對緩存中保存的第一原始視頻數(shù)據(jù)進(jìn)行提取和處理。
[0072]第一差異計(jì)算子模塊,用于所述相鄰兩幀數(shù)據(jù)之間的數(shù)據(jù)差異值;
[0073]這里,所述的數(shù)據(jù)差異值包括相鄰兩幀數(shù)據(jù)之間的不同像素點(diǎn)的個(gè)數(shù)、相鄰兩幀數(shù)據(jù)之間每個(gè)像素點(diǎn)RGB分量的數(shù)據(jù)差異值或相鄰兩幀數(shù)據(jù)之間的不同像素區(qū)域的個(gè)數(shù)。
[0074]這里,計(jì)算所述相鄰兩幀數(shù)據(jù)之間的數(shù)據(jù)差異值可以采用現(xiàn)有技術(shù)中的已有算法,實(shí)現(xiàn)對相鄰幀數(shù)據(jù)之間的差異值的計(jì)算,為節(jié)約篇幅,此處不再贅述。
[0075]第一差異確定子模塊,用于根據(jù)所述計(jì)算出的數(shù)據(jù)差異值,確定所述相鄰兩幀數(shù)據(jù)的數(shù)據(jù)差異程度。
[0076]例如,當(dāng)采用相鄰兩幀數(shù)據(jù)之間的不同像素點(diǎn)的個(gè)數(shù)作為所述數(shù)據(jù)差異值時(shí),可以比較相鄰兩幀數(shù)據(jù)中對應(yīng)的像素點(diǎn),判斷對應(yīng)的像素點(diǎn)的數(shù)據(jù)是否相同,并根據(jù)判斷的結(jié)果,獲得相鄰兩幀數(shù)據(jù)之間的不同像素點(diǎn)的個(gè)數(shù)。
[0077]再例如,當(dāng)采用相鄰兩幀數(shù)據(jù)之間每個(gè)像素點(diǎn)RGB分量的第一數(shù)據(jù)差異值作為所述數(shù)據(jù)差異值時(shí),具體可以是:比較相鄰兩幀數(shù)據(jù)中對應(yīng)的像素點(diǎn)的對應(yīng)RGB分量的數(shù)據(jù)差異,將比較得到的所有RGB分量的數(shù)據(jù)差異進(jìn)行求和計(jì)算,將計(jì)算得到的和值,作為所述數(shù)據(jù)差異值。
[0078]又例如,當(dāng)采用相鄰兩幀數(shù)據(jù)之間的不同像素區(qū)域的個(gè)數(shù)作為所述數(shù)據(jù)差異值時(shí),具體可以是:將幀數(shù)據(jù)對應(yīng)的整個(gè)圖像劃分為預(yù)定大小的預(yù)定像素區(qū)域,比較相鄰兩個(gè)幀數(shù)據(jù)之間對應(yīng)的像素區(qū)域,確定相鄰兩個(gè)幀數(shù)據(jù)之間不同像素區(qū)域的個(gè)數(shù)。其中,兩個(gè)像素區(qū)域是否相同,可以依據(jù)兩個(gè)像素區(qū)域中不同像素點(diǎn)的個(gè)數(shù)是否超出預(yù)設(shè)的閾值,當(dāng)超出該閾值時(shí),則認(rèn)為該兩個(gè)像素區(qū)域不同。
[0079]第一執(zhí)行處理模塊203,用于根據(jù)所述確定的數(shù)據(jù)差異程度,調(diào)整所述第一原始視頻數(shù)據(jù)的數(shù)據(jù)幀,獲取第二視頻數(shù)據(jù)。
[0080]作為一種具體實(shí)現(xiàn)方式,本發(fā)明的上述實(shí)施例中所述的第一執(zhí)行處理模塊203可以包括:
[0081]第一差異比較子模塊,用于將所述計(jì)算出的數(shù)據(jù)差異值與預(yù)設(shè)閾值進(jìn)行比較,所述預(yù)設(shè)閾值為一幀數(shù)據(jù)像素總數(shù)的K%,其中,K大于等于15,且K小于等于70 ;
[0082]這里,所述預(yù)設(shè)閾值可以是現(xiàn)有技術(shù)中通過應(yīng)用程序設(shè)置的,當(dāng)然也可以是從以后新的技術(shù)中得到該預(yù)設(shè)閾值。
[0083]第一保留處理子模塊,用于當(dāng)所述數(shù)據(jù)差異值大于所述預(yù)設(shè)閾值時(shí),保留所述相鄰兩幀數(shù)據(jù);
[0084]當(dāng)所述數(shù)據(jù)差異值大于所述預(yù)設(shè)閾值時(shí),說明該相鄰兩數(shù)據(jù)幀的幀數(shù)據(jù)內(nèi)容差異較大,若抽取其中任何一幀會造成最后得到的第二視頻數(shù)據(jù)播放不流暢,所以在所述數(shù)據(jù)差異值大于所述預(yù)設(shè)閾值時(shí),保留所述相鄰兩數(shù)據(jù)幀。
[0085]第一抽幀處理子模塊,用于當(dāng)所述數(shù)據(jù)差異值小于或等于所述預(yù)設(shè)閾值時(shí),對所述相鄰兩幀數(shù)據(jù)進(jìn)行抽幀處理。
[0086]當(dāng)所述數(shù)據(jù)差異值小于或等于所述預(yù)設(shè)閾值時(shí),說明該相鄰兩數(shù)據(jù)幀的幀數(shù)據(jù)內(nèi)容差異不大或沒有差異,若抽取其中任何一幀不會造成最后得到的第二視頻數(shù)據(jù)播放不流暢,所以在所述數(shù)據(jù)差異值小于或等于所述預(yù)設(shè)閾值時(shí),對所述相鄰兩數(shù)據(jù)幀進(jìn)行抽幀處理。
[0087]作為另一種具體實(shí)現(xiàn)方式,本發(fā)明的上述實(shí)施例中所述的第一執(zhí)行處理模塊203可以包括:
[0088]第二差異比較子模塊,用于將所述計(jì)算出的數(shù)據(jù)差異值與預(yù)設(shè)閾值進(jìn)行比較,所述預(yù)設(shè)閾值為一幀數(shù)據(jù)像素總數(shù)的K%,其中,K大于等于15,且K小于等于70 ;
[0089]這里,所述預(yù)設(shè)閾值可以是現(xiàn)有技術(shù)中通過應(yīng)用程序設(shè)置的,當(dāng)然也可以是從以后新的技術(shù)中得到該預(yù)設(shè)閾值。
[0090]第一插幀處理子模塊,用于當(dāng)所述數(shù)據(jù)差異值大于所述預(yù)設(shè)閾值時(shí),對所述相鄰兩幀數(shù)據(jù)進(jìn)行插幀處理;
[0091]當(dāng)所述數(shù)據(jù)差異值大于所述預(yù)設(shè)閾值時(shí),說明該相鄰兩數(shù)據(jù)幀的幀數(shù)據(jù)內(nèi)容差異較大,若不作處理,在最后得到的第二視頻數(shù)據(jù)播放時(shí)會出現(xiàn)不流暢現(xiàn)象;若在該相鄰兩數(shù)據(jù)幀之間插入一幀或多幀過渡幀,可以使最后得到的第二視頻數(shù)據(jù)流暢地播放;所以在所述數(shù)據(jù)差異值大于所述預(yù)設(shè)閾值時(shí),對所述相鄰兩數(shù)據(jù)幀進(jìn)行插幀處理。
[0092]第二保留處理子模塊,用于當(dāng)所述數(shù)據(jù)差異值小于或等于所述預(yù)設(shè)閾值時(shí),保留所述相鄰兩幀數(shù)據(jù)。
[0093]當(dāng)所述數(shù)據(jù)差異值小于或等于所述預(yù)設(shè)閾值時(shí),說明該相鄰兩數(shù)據(jù)幀的幀數(shù)據(jù)內(nèi)容差異不大或沒有差異,在最后得到的第二視頻數(shù)據(jù)播放時(shí)不會出現(xiàn)不流暢現(xiàn)象;所以在所述數(shù)據(jù)差異值小于或等于所述預(yù)設(shè)閾值時(shí),可以保留所述相鄰兩數(shù)據(jù)幀。
[0094]作為又一種具體實(shí)現(xiàn)方式,本發(fā)明的上述實(shí)施例中所述的第一執(zhí)行處理模塊203可以包括:
[0095]第三差異比較子模塊,用于將所述計(jì)算出的數(shù)據(jù)差異值與預(yù)設(shè)閾值進(jìn)行比較,所述預(yù)設(shè)閾值為一幀數(shù)據(jù)像素總數(shù)的κ%,其中,K大于等于15,且K小于等于70 ;
[0096]這里,所述預(yù)設(shè)閾值可以是現(xiàn)有技術(shù)中通過應(yīng)用程序設(shè)置的,當(dāng)然也可以是從以后新的技術(shù)中得到該預(yù)設(shè)閾值。
[0097]第二插幀處理子模塊,用于當(dāng)所述數(shù)據(jù)差異值大于所述預(yù)設(shè)閾值時(shí),對所述相鄰兩幀數(shù)據(jù)進(jìn)行插幀處理;
[0098]當(dāng)所述數(shù)據(jù)差異值大于所述預(yù)設(shè)閾值時(shí),說明該相鄰兩數(shù)據(jù)幀的幀數(shù)據(jù)內(nèi)容差異較大,若不作處理,在最后得到的第二視頻數(shù)據(jù)播放時(shí)會出現(xiàn)不流暢現(xiàn)象;若在該相鄰兩數(shù)據(jù)幀之間插入一幀或多幀過渡幀,可以使最后得到的第二視頻數(shù)據(jù)流暢地播放;所以在所述數(shù)據(jù)差異值大于所述預(yù)設(shè)閾值時(shí),對所述相鄰兩數(shù)據(jù)幀進(jìn)行插幀處理。
[0099]第二抽幀處理子模塊,用于當(dāng)所述數(shù)據(jù)差異值小于或等于所述預(yù)設(shè)閾值時(shí),對所述相鄰兩幀數(shù)據(jù)進(jìn)行抽幀處理。
[0100]當(dāng)所述數(shù)據(jù)差異值小于或等于所述預(yù)設(shè)閾值時(shí),說明該相鄰兩數(shù)據(jù)幀的幀數(shù)據(jù)內(nèi)容差異不大或沒有差異,若抽取其中任何一幀不會造成最后得到的第二視頻數(shù)據(jù)播放不流暢,所以在所述數(shù)據(jù)差異值小于或等于所述預(yù)設(shè)閾值時(shí),對所述相鄰兩數(shù)據(jù)幀進(jìn)行抽幀處理。
[0101]本發(fā)明的上述實(shí)施例的移動終端,通過確定緩存的第一原始視頻數(shù)據(jù)中幀數(shù)據(jù)之間的差異程度,調(diào)整第一原始視頻的幀數(shù)據(jù),對第一原始視頻數(shù)據(jù)中的幀數(shù)據(jù)進(jìn)行選擇性的抽幀和/或插幀處理,沒有破壞第一原始視頻數(shù)據(jù)中的幀數(shù)據(jù)運(yùn)動的軌跡,提高了視頻播放的流暢性。
[0102]本發(fā)明的終端實(shí)施例能實(shí)現(xiàn)方法實(shí)施例中各步驟,在此不再詳述。
[0103]第三實(shí)施例:
[0104]如圖3所示,為本發(fā)明實(shí)施例視頻處理方法的幀數(shù)據(jù)僅進(jìn)行抽幀處理的一種具體實(shí)施過程的示意圖。下面結(jié)合該圖具體說明幀數(shù)據(jù)僅進(jìn)行抽幀處理的實(shí)施過程。
[0105]步驟301:申請兩個(gè)緩存區(qū)A和B,預(yù)設(shè)閾值為一幀數(shù)據(jù)像素總數(shù)的20% ;依次提取緩存的第一原始視頻幀數(shù)據(jù)的相鄰兩幀幀數(shù)據(jù)Framel和Frame2,分別放入緩存區(qū)A和緩存區(qū)B。
[0106]其中,依次提取緩存的第一原始視頻幀數(shù)據(jù)的相鄰兩幀的幀數(shù)據(jù),可以按照流水線處理的方式,對緩存中保存的第一原始視頻數(shù)據(jù)進(jìn)行提取和處理。
[0107]步驟302:計(jì)算Framel和Frame2之間的數(shù)據(jù)差異值,統(tǒng)計(jì)Framel和Frame2之間不同像素點(diǎn)的個(gè)數(shù)。
[0108]該步驟中,本發(fā)明實(shí)施例中采用相鄰兩幀數(shù)據(jù)之間的不同像素點(diǎn)的個(gè)數(shù)作為所述數(shù)據(jù)差異值,可以比較相鄰兩幀數(shù)據(jù)中對應(yīng)的像素點(diǎn),判斷對應(yīng)的像素點(diǎn)的數(shù)據(jù)是否相同,并根據(jù)判斷的結(jié)果,獲得相鄰兩幀數(shù)據(jù)之間的不同像素點(diǎn)的個(gè)數(shù);且計(jì)算所述相鄰兩幀數(shù)據(jù)之間的數(shù)據(jù)差異值可以采用現(xiàn)有技術(shù)中的已有算法,實(shí)現(xiàn)對相鄰幀數(shù)據(jù)之間的差異值的計(jì)算。
[0109]當(dāng)然,也可以采用將相鄰兩幀數(shù)據(jù)之間每個(gè)像素點(diǎn)RGB分量的數(shù)據(jù)差異值作為所述數(shù)據(jù)差異值,或相鄰兩幀數(shù)據(jù)之間的不同像素區(qū)域的個(gè)數(shù)作為所述數(shù)據(jù)差異值。
[0110]步驟303:判斷Framel和Frame2之間不同像素點(diǎn)的個(gè)數(shù)大于一幀數(shù)據(jù)像素總數(shù)的20%,保留該兩幀數(shù)據(jù)。
[0111]通過步驟302中的計(jì)算統(tǒng)計(jì)得到的Frame I和Frame2之間不同像素點(diǎn)的個(gè)數(shù),判斷Framel和Frame2之間不同像素點(diǎn)的個(gè)數(shù),本實(shí)施例中Framel和Frame2之間不同像素點(diǎn)的個(gè)數(shù)大于一幀數(shù)據(jù)像素總數(shù)的20%,即超出預(yù)設(shè)的閾值,說明Framel和Frame2該相鄰兩幀的幀數(shù)據(jù)內(nèi)容差異比較大,若抽取其中任何一幀會造成最后得到的第二視頻數(shù)據(jù)的幀數(shù)據(jù)內(nèi)容銜接不上,播放不流暢,所以Framel和Frame2該相鄰兩幀不可缺失,保留該兩數(shù)據(jù)幀。
[0112]步驟304:緩存第一原始視頻幀數(shù)據(jù)的Frame3到緩存區(qū)A。
[0113]緩存第一原始視頻幀數(shù)據(jù)的Frame3到緩存區(qū)A之后進(jìn)入步驟305和步驟306,執(zhí)行與上述步驟302和步驟303相同的算法處理,對相鄰兩數(shù)據(jù)幀F(xiàn)rame2和Frame3之間的不同像素點(diǎn)的個(gè)數(shù)與預(yù)設(shè)的閾值比較,本實(shí)施例中Frame2和Frame3之間的不同像素點(diǎn)的個(gè)數(shù)大于一幀數(shù)據(jù)像素總數(shù)的20%,所以保留該兩數(shù)據(jù)幀。
[0114]步驟305:計(jì)算Frame2和Frame3之間的數(shù)據(jù)差異值,統(tǒng)計(jì)Frame2和Frame3之間不同像素點(diǎn)的個(gè)數(shù)。
[0115]步驟306:判斷Frame2和Frame3之間不同像素點(diǎn)的個(gè)數(shù)大于一幀數(shù)據(jù)像素總數(shù)的20%,保留該兩幀數(shù)據(jù)。
[0116]步驟307:緩存第一原始視頻幀數(shù)據(jù)的Frame4到緩存區(qū)B。
[0117]緩存第一原始視頻幀數(shù)據(jù)的Frame4到緩存區(qū)B之后進(jìn)入步驟308和步驟309,執(zhí)行與上述步驟302和步驟303相同的算法處理,對相鄰兩數(shù)據(jù)幀F(xiàn)rame3和Frame4之間的不同像素點(diǎn)的個(gè)數(shù)與預(yù)設(shè)的閾值比較,本實(shí)施例中Frame3和Frame4之間的不同像素點(diǎn)的個(gè)數(shù)小于一幀數(shù)據(jù)像素總數(shù)的20%,所以抽掉數(shù)據(jù)幀F(xiàn)rame4。
[0118]步驟308:計(jì)算Frame3和Frame4之間的數(shù)據(jù)差異值,統(tǒng)計(jì)Frame3和Frame4之間不同像素點(diǎn)的個(gè)數(shù)。
[0119]步驟309:判斷Frame3和Frame4之間不同像素點(diǎn)的個(gè)數(shù)小于一幀數(shù)據(jù)像素總數(shù)的20 %,抽掉幀數(shù)據(jù)Frame4。
[0120]這里需要說明的是,F(xiàn)rame3和Frame4之間的不同像素點(diǎn)的個(gè)數(shù)小于一幀數(shù)據(jù)像素總數(shù)的20%,即未超出預(yù)設(shè)的閾值,說明Frame3和Frame4該相鄰兩幀的幀數(shù)據(jù)內(nèi)容差異不大,若抽掉數(shù)據(jù)幀F(xiàn)rame4不會影響最后得到的第二視頻數(shù)據(jù)播放的流暢性。
[0121]按照上述的方式,對后續(xù)相鄰的兩幀數(shù)據(jù)計(jì)算,并與預(yù)設(shè)閾值進(jìn)行比較,對相鄰的兩幀數(shù)據(jù)執(zhí)行相應(yīng)的處理;緩存到緩存區(qū)B的Frame5,與相鄰的數(shù)據(jù)幀F(xiàn)rame3計(jì)算比較判斷,結(jié)果抽掉數(shù)據(jù)幀F(xiàn)rame5 ;與緩存到緩存區(qū)B的Frame6計(jì)算比較判斷,結(jié)果保留該兩數(shù)據(jù)幀,依次類推,這里不再贅述。
[0122]需要說明的是,本實(shí)施例采用的比較方法不限于此,還可以使用第三方的軟件處理算法。
[0123]本發(fā)明的上述實(shí)施例中,通過確定緩存的第一原始視頻數(shù)據(jù)中幀數(shù)據(jù)之間的差異程度,調(diào)整第一原始視頻的幀數(shù)據(jù),對第一原始視頻數(shù)據(jù)中的幀數(shù)據(jù)進(jìn)行選擇性的抽幀處理,沒有破壞第一原始視頻數(shù)據(jù)中的幀數(shù)據(jù)運(yùn)動的軌跡,提高了視頻播放的流暢性。
[0124]第四實(shí)施例:
[0125]如圖4所示,為本發(fā)明實(shí)施例視頻處理方法的幀數(shù)據(jù)僅進(jìn)行插幀處理的一種具體實(shí)施過程的示意圖。下面結(jié)合該圖具體說明幀數(shù)據(jù)僅進(jìn)行插幀處理的實(shí)施過程。
[0126]步驟401:申請三個(gè)緩存區(qū)A、B和C,預(yù)設(shè)閾值為30% ;依次提取緩存的第一原始視頻幀數(shù)據(jù)的相鄰兩幀幀數(shù)據(jù)Framel和Frame2,分別放入緩存區(qū)A和緩存區(qū)B。
[0127]依次提取緩存的第一原始視頻幀數(shù)據(jù)的相鄰兩幀幀數(shù)據(jù),可以按照流水線處理的方式,對緩存中保存的第一原始視頻數(shù)據(jù)進(jìn)行提取和處理。
[0128]步驟402:計(jì)算Framel和Frame2之間的數(shù)據(jù)差異值,統(tǒng)計(jì)Framel和Frame2之間不同像素點(diǎn)的個(gè)數(shù)。
[0129]這里,本發(fā)明實(shí)施例中采用相鄰兩幀數(shù)據(jù)之間的不同像素點(diǎn)的個(gè)數(shù)作為所述數(shù)據(jù)差異值,可以比較相鄰兩幀數(shù)據(jù)中對應(yīng)的像素點(diǎn),判斷對應(yīng)的像素點(diǎn)的數(shù)據(jù)是否相同,并根據(jù)判斷的結(jié)果,獲得相鄰兩幀數(shù)據(jù)之間的不同像素點(diǎn)的個(gè)數(shù);且計(jì)算所述相鄰兩幀數(shù)據(jù)之間的數(shù)據(jù)差異值可以采用現(xiàn)有技術(shù)中的已有算法,實(shí)現(xiàn)對相鄰幀數(shù)據(jù)之間的差異值的計(jì)笪并O
[0130]當(dāng)然,也可以采用將相鄰兩幀數(shù)據(jù)之間每個(gè)像素點(diǎn)RGB分量的數(shù)據(jù)差異值作為所述數(shù)據(jù)差異值,或相鄰兩幀數(shù)據(jù)之間的不同像素區(qū)域的個(gè)數(shù)作為所述數(shù)據(jù)差異值。
[0131]步驟403:判斷Framel和Frame2之間不同像素點(diǎn)的個(gè)數(shù)大于一幀數(shù)據(jù)像素總數(shù)的30%,生成過渡幀F(xiàn)rame 1-2。
[0132]其中,過渡幀F(xiàn)rame 1-2生成過程為:以Framel為基礎(chǔ),拷貝Frame2與Framel之間差異像素的數(shù)據(jù)到該基礎(chǔ)幀數(shù)據(jù)像素的對應(yīng)位置上,生成新的過渡幀F(xiàn)ramel-2 ;
[0133]這里需要說明的是,F(xiàn)rame2與Framel之間差異像素的數(shù)據(jù)只需部分拷貝即可,且不限于僅生成一個(gè)過渡幀數(shù)據(jù),可拷貝差異像素的數(shù)據(jù)中的不同像素?cái)?shù)據(jù)到基礎(chǔ)幀數(shù)據(jù)像素的不同對應(yīng)位置上,生成不同的過渡幀。
[0134]本實(shí)施例中Framel和Frame2之間不同像素點(diǎn)的個(gè)數(shù)大于一幀數(shù)據(jù)像素總數(shù)的30%,即超出預(yù)設(shè)的閾值,說明Framel和Frame2該相鄰兩幀的幀數(shù)據(jù)內(nèi)容差異比較大,會影響最后得到的第二視頻數(shù)據(jù)的幀數(shù)據(jù)內(nèi)容銜接不上,播放不流暢,生成一個(gè)過渡幀F(xiàn)ramel-2,會使得最后得到的第二視頻數(shù)據(jù)的幀數(shù)據(jù)內(nèi)容播放時(shí),用戶視覺上不會感覺到視頻畫面的跳躍,很流暢。
[0135]步驟404:將過渡幀F(xiàn)rame 1-2插入到緩存區(qū)A和B之間的緩存區(qū)C,即插入過渡幀F(xiàn)rame 1-2 到 Framel 和 Frame2 之間。
[0136]這里,可以采用現(xiàn)有技術(shù)中已有的插入方式,插入生成的過渡幀,當(dāng)然也可以采用其他新的幀插入方式。
[0137]步驟405:緩存第一原始視頻幀數(shù)據(jù)的Frame3到緩存區(qū)A。
[0138]步驟406:與上述步驟402相同,計(jì)算相鄰兩幀F(xiàn)rame2和Frame3之間的數(shù)據(jù)差異值,統(tǒng)計(jì)Frame2和Frame3之間不同像素點(diǎn)的個(gè)數(shù)。
[0139]步驟407:與上述步驟403相同,將相鄰兩幀F(xiàn)rame2和Frame3之間不同像素點(diǎn)的個(gè)數(shù)與預(yù)設(shè)的閾值比較,本實(shí)施例中Frame2和Frame3之間不同像素點(diǎn)的個(gè)數(shù)小于一幀數(shù)據(jù)像素總數(shù)的30%,保留該兩幀數(shù)據(jù)。
[0140]本實(shí)施例中Frame2和Frame3之間不同像素點(diǎn)的個(gè)數(shù)小于一幀數(shù)據(jù)像素總數(shù)的30%,說明Frame2和Frame3該相鄰兩幀的幀數(shù)據(jù)內(nèi)容差異不大,最后得到的第二視頻數(shù)據(jù)的幀數(shù)據(jù)內(nèi)容播放時(shí),用戶視覺感受是流暢的,沒有視頻畫面跳躍的感受,所以保留該兩數(shù)據(jù)幀。
[0141]按照上述的方式,對后續(xù)相鄰的兩幀數(shù)據(jù)計(jì)算,并與預(yù)設(shè)閾值進(jìn)行比較,對相鄰的兩幀數(shù)據(jù)執(zhí)行相應(yīng)的處理,如緩存到緩存區(qū)B的Frame4,與相鄰的數(shù)據(jù)幀F(xiàn)rame3計(jì)算比較判斷,結(jié)果保留該兩數(shù)據(jù)幀;與緩存到緩存區(qū)A的Frame5計(jì)算比較判斷,結(jié)果插入生成的過渡幀F(xiàn)rame4-5,依次類推,這里不再贅述。
[0142]需要說明的是,本實(shí)施例采用的比較方法不限于此,還可以使用第三方的軟件處理算法。
[0143]本發(fā)明的上述實(shí)施例中,通過確定緩存的第一原始視頻數(shù)據(jù)中幀數(shù)據(jù)之間的差異程度,調(diào)整第一原始視頻的幀數(shù)據(jù),對第一原始視頻數(shù)據(jù)中的幀數(shù)據(jù)進(jìn)行選擇性的插幀處理,沒有破壞第一原始視頻數(shù)據(jù)中的幀數(shù)據(jù)運(yùn)動的軌跡,提高了視頻播放的流暢性。
[0144]第五實(shí)施例:
[0145]如圖5所示,為本發(fā)明實(shí)施例視頻處理方法幀數(shù)據(jù)進(jìn)行抽幀和插幀處理的一種具體實(shí)施過程的示意圖。下面結(jié)合該圖具體說明幀數(shù)據(jù)進(jìn)行抽幀和插幀處理的實(shí)施過程。
[0146]步驟501:申請三個(gè)緩存區(qū)A、B和C,預(yù)設(shè)閾值為50% ;依次提取緩存的第一原始視頻幀數(shù)據(jù)的相鄰兩幀幀數(shù)據(jù)Framel和Frame2,分別放入緩存區(qū)A和緩存區(qū)B。
[0147]依次提取緩存的第一原始視頻幀數(shù)據(jù)的相鄰兩幀幀數(shù)據(jù),可以按照流水線處理的方式,對緩存中保存的第一原始視頻數(shù)據(jù)進(jìn)行提取和處理。
[0148]步驟502:計(jì)算Framel和Frame2之間的數(shù)據(jù)差異值,統(tǒng)計(jì)Framel和Frame2之間不同像素點(diǎn)的個(gè)數(shù)。
[0149]這里,本發(fā)明實(shí)施例中采用相鄰兩幀數(shù)據(jù)之間的不同像素點(diǎn)的個(gè)數(shù)作為所述數(shù)據(jù)差異值,可以比較相鄰兩幀數(shù)據(jù)中對應(yīng)的像素點(diǎn),判斷對應(yīng)的像素點(diǎn)的數(shù)據(jù)是否相同,并根據(jù)判斷的結(jié)果,獲得相鄰兩幀數(shù)據(jù)之間的不同像素點(diǎn)的個(gè)數(shù);且計(jì)算所述相鄰兩幀數(shù)據(jù)之間的數(shù)據(jù)差異值可以采用現(xiàn)有技術(shù)中的已有算法,實(shí)現(xiàn)對相鄰幀數(shù)據(jù)之間的差異值的計(jì)笪并ο
[0150]當(dāng)然,也可以采用將相鄰兩幀數(shù)據(jù)之間每個(gè)像素點(diǎn)RGB分量的數(shù)據(jù)差異值作為所述數(shù)據(jù)差異值,或相鄰兩幀數(shù)據(jù)之間的不同像素區(qū)域的個(gè)數(shù)作為所述數(shù)據(jù)差異值。
[0151]步驟503:判斷Framel和Frame2之間不同像素點(diǎn)的個(gè)數(shù)小于一幀數(shù)據(jù)像素總數(shù)的50 %,抽掉幀數(shù)據(jù)Frame2。
[0152]這里,F(xiàn)ramel和Frame2之間不同像素點(diǎn)的個(gè)數(shù)小于一幀數(shù)據(jù)像素總數(shù)的50%,即未超出預(yù)設(shè)的閾值,說明Framel和Frame2該相鄰兩幀的幀數(shù)據(jù)內(nèi)容差異不大,若抽掉數(shù)據(jù)幀F(xiàn)rame2不會影響最后得到的第二視頻數(shù)據(jù)播放的流暢性,所以本實(shí)施例中Framel和Frame2之間不同像素點(diǎn)的個(gè)數(shù)小于一幀數(shù)據(jù)像素總數(shù)的50%,抽掉數(shù)據(jù)幀F(xiàn)rame2 ;
[0153]步驟504:緩存第一原始視頻幀數(shù)據(jù)的Frame3到緩存區(qū)B。
[0154]步驟505:與上述步驟502相同,計(jì)算相鄰兩幀F(xiàn)ramel和Frame3之間的數(shù)據(jù)差異值,由于上述步驟503中抽掉了數(shù)據(jù)幀F(xiàn)rame2,所以Framel和Frame3相鄰,統(tǒng)計(jì)Framel和Frame3之間不同像素點(diǎn)的個(gè)數(shù)。
[0155]步驟506:判斷Framel和Frame3之間不同像素點(diǎn)的個(gè)數(shù)大于一幀數(shù)據(jù)像素總數(shù)的50%,生成過渡幀F(xiàn)ramel-3,其中,過渡幀F(xiàn)rame 1-3生成過程為:以Framel為基礎(chǔ),拷貝Framel與Frame3之間差異像素的數(shù)據(jù)到該基礎(chǔ)幀數(shù)據(jù)像素的對應(yīng)位置上,生成新的過渡幀 Frame1-3。
[0156]這里需要說明的是,F(xiàn)ramel與Frame3之間差異像素的數(shù)據(jù)只需部分拷貝即可,且不限于僅生成一個(gè)過渡幀數(shù)據(jù),可拷貝差異像素的數(shù)據(jù)中的不同像素?cái)?shù)據(jù)到基礎(chǔ)幀數(shù)據(jù)像素的不同對應(yīng)位置上,生成不同的過渡幀。
[0157]本實(shí)施例中Framel和Frame3之間不同像素點(diǎn)的個(gè)數(shù)大于一幀數(shù)據(jù)像素總數(shù)的50%,即超出預(yù)設(shè)的閾值,說明Framel和Frame2該相鄰兩幀的幀數(shù)據(jù)內(nèi)容差異比較大,會影響最后得到的第二視頻數(shù)據(jù)的幀數(shù)據(jù)內(nèi)容銜接不上,播放不流暢,生成一個(gè)過渡幀F(xiàn)ramel-3,會使得最后得到的第二視頻數(shù)據(jù)的幀數(shù)據(jù)內(nèi)容播放時(shí),用戶視覺上不會感覺到視頻畫面的跳躍,很流暢。
[0158]步驟507:將過渡幀F(xiàn)ramel-3插入到緩存區(qū)A和B之間的緩存區(qū)C,即插入過渡幀F(xiàn)ramel-3 到 Framel 和 Frame3 之間。
[0159]這里,可以采用現(xiàn)有技術(shù)中已有的插入方式,插入生成的過渡幀,當(dāng)然也可以采用其他新的幀插入方式。
[0160]按照上述的方式,對后續(xù)相鄰的兩幀數(shù)據(jù)計(jì)算,并與預(yù)設(shè)閾值進(jìn)行比較,對相鄰的兩幀數(shù)據(jù)執(zhí)行相應(yīng)的處理,如如緩存到緩存區(qū)A的Frame4,與相鄰的數(shù)據(jù)幀F(xiàn)rame3計(jì)算比較判斷,結(jié)果插入生成的過渡幀F(xiàn)rame3-4到緩存區(qū)C ;與緩存到緩存區(qū)B的Frame5計(jì)算比較判斷,結(jié)果抽掉數(shù)據(jù)幀F(xiàn)rame5,以此類推,這里不再贅述。
[0161]需要說明的是,本實(shí)施例采用的比較方法不限于此,還可以使用第三方的軟件處理算法。
[0162]本發(fā)明的上述實(shí)施例中,通過確定緩存的第一原始視頻數(shù)據(jù)中幀數(shù)據(jù)之間的差異程度,調(diào)整第一原始視頻的幀數(shù)據(jù),對第一原始視頻數(shù)據(jù)中的幀數(shù)據(jù)進(jìn)行選擇性的抽幀和插幀處理,沒有破壞第一原始視頻數(shù)據(jù)中的幀數(shù)據(jù)運(yùn)動的軌跡,提高了視頻播放的流暢性。
[0163]本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例方法中的全部或部分流程,是可以通過計(jì)算機(jī)程序來指令相關(guān)的硬件來完成,所述的程序可存儲于一計(jì)算機(jī)可讀取存儲介質(zhì)中,該程序在執(zhí)行時(shí),可包括如上述各方法的實(shí)施例的流程。其中,所述的存儲介質(zhì)可為磁碟、光盤、只讀存儲記憶體(Read-Only Memory, ROM)或隨機(jī)存儲記憶體(Random AccessMemory, RAM)等。
[0164]以上所揭露的僅為本發(fā)明一種較佳實(shí)施例而已,當(dāng)然不能以此來限定本發(fā)明之權(quán)利范圍,本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例的全部或部分流程,并依本發(fā)明權(quán)利要求所作的等同變化,仍屬于本發(fā)明所涵蓋的范圍。
【主權(quán)項(xiàng)】
1.一種視頻處理方法,其特征在于,包括: 接收并緩存第一原始視頻數(shù)據(jù)的所有幀數(shù)據(jù); 根據(jù)所述緩存的第一原始視頻數(shù)據(jù)的所有幀數(shù)據(jù),確定所述第一原始視頻數(shù)據(jù)的所有幀數(shù)據(jù)之間的數(shù)據(jù)差異程度; 根據(jù)所述確定的數(shù)據(jù)差異程度,調(diào)整所述第一原始視頻數(shù)據(jù)的數(shù)據(jù)幀,獲取第二視頻數(shù)據(jù)。2.根據(jù)權(quán)利要求1所述的視頻處理方法,其特征在于,所述確定所述第一原始視頻數(shù)據(jù)的所有幀數(shù)據(jù)之間的數(shù)據(jù)差異程度,包括: 依次提取所述緩存的所述第一原始視頻數(shù)據(jù)的相鄰兩幀數(shù)據(jù); 計(jì)算所述相鄰兩幀數(shù)據(jù)之間的數(shù)據(jù)差異值; 根據(jù)所述計(jì)算出的數(shù)據(jù)差異值,確定所述相鄰兩幀數(shù)據(jù)的數(shù)據(jù)差異程度。3.根據(jù)權(quán)利要求2所述的視頻處理方法,其特征在于,所述數(shù)據(jù)差異值包括相鄰兩幀數(shù)據(jù)之間的不同像素點(diǎn)的個(gè)數(shù)、相鄰兩幀數(shù)據(jù)之間每個(gè)像素點(diǎn)RGB分量的數(shù)據(jù)差異值或相鄰兩幀數(shù)據(jù)之間的不同像素區(qū)域的個(gè)數(shù)。4.根據(jù)權(quán)利要求2所述的視頻處理方法,其特征在于,所述根據(jù)所述確定的數(shù)據(jù)差異程度,調(diào)整所述第一原始視頻數(shù)據(jù)的數(shù)據(jù)幀,獲取第二視頻數(shù)據(jù),包括: 將所述計(jì)算出的數(shù)據(jù)差異值與預(yù)設(shè)閾值進(jìn)行比較,所述預(yù)設(shè)閾值為一幀數(shù)據(jù)像素總數(shù)的K%,其中,K大于等于15,且K小于等于70 ; 當(dāng)所述數(shù)據(jù)差異值大于所述預(yù)設(shè)閾值時(shí),保留所述相鄰兩幀數(shù)據(jù); 當(dāng)所述數(shù)據(jù)差異值小于或等于所述預(yù)設(shè)閾值時(shí),對所述相鄰兩幀數(shù)據(jù)進(jìn)行抽幀處理。5.根據(jù)權(quán)利要求2所述的視頻處理方法,其特征在于,所述根據(jù)所述確定的數(shù)據(jù)差異程度,調(diào)整所述第一原始視頻數(shù)據(jù)的數(shù)據(jù)幀,獲取第二視頻數(shù)據(jù),包括: 將所述計(jì)算出的數(shù)據(jù)差異值與預(yù)設(shè)閾值進(jìn)行比較,所述預(yù)設(shè)閾值為一幀數(shù)據(jù)像素總數(shù)的Κ%,其中,K大于等于15,且K小于等于70 ; 當(dāng)所述數(shù)據(jù)差異值大于所述預(yù)設(shè)閾值時(shí),對所述相鄰兩幀數(shù)據(jù)進(jìn)行插幀處理; 當(dāng)所述數(shù)據(jù)差異值小于或等于所述預(yù)設(shè)閾值時(shí),保留所述相鄰兩幀數(shù)據(jù)。6.根據(jù)權(quán)利要求2所述的視頻處理方法,其特征在于,所述根據(jù)所述確定的數(shù)據(jù)差異程度,調(diào)整所述第一原始視頻數(shù)據(jù)的數(shù)據(jù)幀,獲取第二視頻數(shù)據(jù),包括: 將所述計(jì)算出的數(shù)據(jù)差異值與預(yù)設(shè)閾值進(jìn)行比較,所述預(yù)設(shè)閾值為一幀數(shù)據(jù)像素總數(shù)的Κ%,其中,K大于等于15,且K小于等于70 ; 當(dāng)所述數(shù)據(jù)差異值大于所述預(yù)設(shè)閾值時(shí),對所述相鄰兩幀數(shù)據(jù)進(jìn)行插幀處理; 當(dāng)所述數(shù)據(jù)差異值小于或等于所述預(yù)設(shè)閾值時(shí),對所述相鄰兩幀數(shù)據(jù)進(jìn)行抽幀處理。7.—種移動終端,其特征在于,包括: 第一接收緩存模塊,用于接收并緩存第一原始視頻數(shù)據(jù)的所有幀數(shù)據(jù); 第一差異確定模塊,用于根據(jù)所述緩存的第一原始視頻數(shù)據(jù)的所有幀數(shù)據(jù),確定所述第一原始視頻數(shù)據(jù)的所有幀數(shù)據(jù)之間的數(shù)據(jù)差異程度; 第一執(zhí)行處理模塊,用于根據(jù)所述確定的數(shù)據(jù)差異程度,調(diào)整所述第一原始視頻數(shù)據(jù)的數(shù)據(jù)幀,獲取第二視頻數(shù)據(jù)。8.根據(jù)權(quán)利要求7所述的移動終端,其特征在于,所述第一差異確定模塊還包括: 第一提取子模塊,用于依次提取所述緩存的所述第一原始視頻數(shù)據(jù)的相鄰兩幀數(shù)據(jù); 第一差異計(jì)算子模塊,用于計(jì)算所述相鄰兩幀數(shù)據(jù)之間的數(shù)據(jù)差異值; 第一差異確定子模塊,用于根據(jù)所述計(jì)算出的數(shù)據(jù)差異值,確定所述相鄰兩幀數(shù)據(jù)的數(shù)據(jù)差異程度。9.根據(jù)權(quán)利要求8所述的移動終端,其特征在于,所述數(shù)據(jù)差異值包括相鄰兩幀數(shù)據(jù)之間的不同像素點(diǎn)的個(gè)數(shù)、相鄰兩幀數(shù)據(jù)之間每個(gè)像素點(diǎn)RGB分量的數(shù)據(jù)差異值或相鄰兩幀數(shù)據(jù)之間的不同像素區(qū)域的個(gè)數(shù)。10.根據(jù)權(quán)利要求8所述的移動終端,其特征在于,所述第一執(zhí)行處理模塊還包括: 第一差異比較子模塊,用于將所述計(jì)算出的數(shù)據(jù)差異值與預(yù)設(shè)閾值進(jìn)行比較,所述預(yù)設(shè)閾值為一幀數(shù)據(jù)像素總數(shù)的K%,其中,K大于等于15,且K小于等于70 ; 第一保留處理子模塊,用于當(dāng)所述數(shù)據(jù)差異值大于所述預(yù)設(shè)閾值時(shí),保留所述相鄰兩幀數(shù)據(jù); 第一抽幀處理子模塊,用于當(dāng)所述數(shù)據(jù)差異值小于或等于所述預(yù)設(shè)閾值時(shí),對所述相鄰兩幀數(shù)據(jù)進(jìn)行抽幀處理。11.根據(jù)權(quán)利要求8所述的移動終端,其特征在于,所述第一執(zhí)行處理模塊還包括: 第二差異比較子模塊,用于將所述計(jì)算出的數(shù)據(jù)差異值與預(yù)設(shè)閾值進(jìn)行比較,所述預(yù)設(shè)閾值為一幀數(shù)據(jù)像素總數(shù)的Κ%,其中,K大于等于15,且K小于等于70 ; 第一插幀處理子模塊,用于當(dāng)所述數(shù)據(jù)差異值大于所述預(yù)設(shè)閾值時(shí),對所述相鄰兩幀數(shù)據(jù)進(jìn)行插幀處理; 第二保留處理子模塊,用于當(dāng)所述數(shù)據(jù)差異值小于或等于所述預(yù)設(shè)閾值時(shí),保留所述相鄰兩幀數(shù)據(jù)。12.根據(jù)權(quán)利要求8所述的移動終端,其特征在于,所述第一執(zhí)行處理模塊還包括: 第三差異比較子模塊,用于將所述計(jì)算出的數(shù)據(jù)差異值與預(yù)設(shè)閾值進(jìn)行比較,所述預(yù)設(shè)閾值為一幀數(shù)據(jù)像素總數(shù)的Κ%,其中,K大于等于15,且K小于等于70 ; 第二插幀處理子模塊,用于當(dāng)所述數(shù)據(jù)差異值大于所述預(yù)設(shè)閾值時(shí),對所述相鄰兩幀數(shù)據(jù)進(jìn)行插幀處理; 第二抽幀處理子模塊,用于當(dāng)所述數(shù)據(jù)差異值小于或等于所述預(yù)設(shè)閾值時(shí),對所述相鄰兩幀數(shù)據(jù)進(jìn)行抽幀處理。
【文檔編號】H04N21/44GK105828184SQ201510552026
【公開日】2016年8月3日
【申請日】2015年8月31日
【發(fā)明人】柯力, 張勝利
【申請人】維沃移動通信有限公司