本發(fā)明涉及通信技術(shù)領(lǐng)域,更具體地說(shuō),涉及一種應(yīng)用啟動(dòng)速度的測(cè)試裝置、終端及方法。
背景技術(shù):
目前,隨著智能手機(jī)的發(fā)展,應(yīng)用市場(chǎng)上的App(Application,應(yīng)用)越來(lái)越多,與此同時(shí),用戶對(duì)于應(yīng)用的要求也越來(lái)越高,在應(yīng)用的性能指標(biāo)中,應(yīng)用的啟動(dòng)速度是非常重要的一個(gè)性能指標(biāo)。但是目前業(yè)內(nèi)沒(méi)有一套有效的應(yīng)用的啟動(dòng)速度的測(cè)試方案,大多還停留在采用拍攝視頻,然后人工數(shù)幀的方式進(jìn)行應(yīng)用啟動(dòng)速度的測(cè)試,效率非常的低。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的主要目的在于提出一種應(yīng)用啟動(dòng)速度的測(cè)試裝置、終端及方法,旨在解決現(xiàn)有技術(shù)中,采用拍攝視頻,然后人工數(shù)幀的方式進(jìn)行應(yīng)用啟動(dòng)速度的測(cè)試,效率非常低的問(wèn)題。
為解決上述技術(shù)問(wèn)題,本發(fā)明提供一種應(yīng)用啟動(dòng)速度的測(cè)試裝置,包括:
拆分模塊,用于將拍攝的應(yīng)用啟動(dòng)過(guò)程的視頻按預(yù)設(shè)幀率拆分成圖片;
記錄模塊,用于記錄每張圖片的拍攝時(shí)間點(diǎn);
計(jì)算模塊,用于根據(jù)預(yù)設(shè)圖像算法計(jì)算每張圖片的特征值;
比較模塊,用于按照?qǐng)D片的拍攝時(shí)間點(diǎn)的先后順序依次將每張圖片的特征值與最后一張圖片的特征值進(jìn)行比較;
第一確定模塊,用于將第一次出現(xiàn)與最后一張圖片的特征值的相似度大于第一預(yù)設(shè)閾值的圖片作為目標(biāo)圖片;
第二確定模塊,用于根據(jù)目標(biāo)圖片的拍攝時(shí)間點(diǎn)以及應(yīng)用啟動(dòng)時(shí)的拍攝時(shí)間點(diǎn),確定應(yīng)用的啟動(dòng)速度。
其中,計(jì)算模塊包括:
縮小子模塊,用于將圖片縮小到預(yù)設(shè)尺寸大??;
轉(zhuǎn)換子模塊,用于將縮小子模塊縮小后的圖片轉(zhuǎn)換為灰度圖片;
第一計(jì)算子模塊,用于按照預(yù)設(shè)算法計(jì)算灰度圖片的每個(gè)像素點(diǎn)的灰度值;
第二計(jì)算子模塊,用于計(jì)算灰度圖片的灰度平均值;
比較子模塊,用于將每個(gè)像素點(diǎn)的灰度值與灰度平均值進(jìn)行比較,得到每個(gè)像素點(diǎn)的比較結(jié)果;每個(gè)像素點(diǎn)的比較結(jié)果包括:當(dāng)像素點(diǎn)的灰度值大于或等于灰度平均值時(shí),記為1;小于灰度平均值時(shí),記為0;
組合子模塊,用于將每個(gè)像素點(diǎn)的比較結(jié)果按照預(yù)設(shè)次序進(jìn)行組合,得到預(yù)設(shè)位數(shù)的二進(jìn)制整數(shù);
確定子模塊,用于將預(yù)設(shè)位數(shù)的二進(jìn)制整數(shù)作為該張圖片的特征值。
其中,在組合子模塊將每個(gè)像素點(diǎn)的比較結(jié)果按照預(yù)設(shè)次序進(jìn)行組合的過(guò)程中,還包括:同一個(gè)視頻的每張圖片采用的預(yù)設(shè)次序相同。
其中,比較模塊具體用于將每張圖片的預(yù)設(shè)位數(shù)的二進(jìn)制整數(shù)與最后一張圖片的預(yù)設(shè)位數(shù)的二進(jìn)制整數(shù),按位一一進(jìn)行比對(duì);第一確定模塊具體用于當(dāng)圖片的預(yù)設(shè)位數(shù)的二進(jìn)制整數(shù)與最后一張圖片的預(yù)設(shè)位數(shù)的二進(jìn)制整數(shù),相同的數(shù)據(jù)位數(shù)超過(guò)第二預(yù)設(shè)閾值時(shí),則確定該圖片的特征值的相似度大于第一預(yù)設(shè)閾值。
進(jìn)一步地,本發(fā)明提供一種終端,包括上述的應(yīng)用啟動(dòng)速度的測(cè)試裝置。
進(jìn)一步地,本發(fā)明提供一種應(yīng)用啟動(dòng)速度的測(cè)試方法,包括:
將拍攝的應(yīng)用啟動(dòng)過(guò)程的視頻按預(yù)設(shè)幀率拆分成圖片,并記錄每張圖片的拍攝時(shí)間點(diǎn);
根據(jù)預(yù)設(shè)圖像算法計(jì)算每張圖片的特征值;
按照?qǐng)D片的拍攝時(shí)間點(diǎn)的先后順序依次將每張圖片的特征值與最后一張圖片的特征值進(jìn)行比較;
將第一次出現(xiàn)與最后一張圖片的特征值的相似度大于第一預(yù)設(shè)閾值的圖片作為目標(biāo)圖片;
根據(jù)目標(biāo)圖片的拍攝時(shí)間點(diǎn)以及應(yīng)用啟動(dòng)時(shí)的拍攝時(shí)間點(diǎn),確定應(yīng)用的啟動(dòng)速度。
其中,根據(jù)預(yù)設(shè)圖像算法計(jì)算每張圖片的特征值包括:
將圖片縮小到預(yù)設(shè)尺寸大小,并將其轉(zhuǎn)換為灰度圖片;
按照預(yù)設(shè)算法計(jì)算灰度圖片的每個(gè)像素點(diǎn)的灰度值;
計(jì)算灰度圖片的灰度平均值;
將每個(gè)像素點(diǎn)的灰度值與灰度平均值進(jìn)行比較,得到每個(gè)像素點(diǎn)的比較結(jié)果;每個(gè)像素點(diǎn)的比較結(jié)果包括:當(dāng)像素點(diǎn)的灰度值大于或等于灰度平均值時(shí),記為1;小于灰度平均值時(shí),記為0;
將每個(gè)像素點(diǎn)的比較結(jié)果按照預(yù)設(shè)次序進(jìn)行組合,得到預(yù)設(shè)位數(shù)的二進(jìn)制整數(shù);
將預(yù)設(shè)位數(shù)的二進(jìn)制整數(shù)作為該張圖片的特征值。
其中,在將每個(gè)像素點(diǎn)的比較結(jié)果按照預(yù)設(shè)次序進(jìn)行組合的過(guò)程中,還包括:同一個(gè)視頻的每張圖片采用的預(yù)設(shè)次序相同。
其中,預(yù)設(shè)算法包括:離散余弦變換算法。
其中,將每張圖片的特征值與最后一張圖片的特征值進(jìn)行比較包括:
將每張圖片的預(yù)設(shè)位數(shù)的二進(jìn)制整數(shù)與最后一張圖片的預(yù)設(shè)位數(shù)的二進(jìn)制整數(shù),按位一一進(jìn)行比對(duì);
當(dāng)圖片的預(yù)設(shè)位數(shù)的二進(jìn)制整數(shù)與最后一張圖片的預(yù)設(shè)位數(shù)的二進(jìn)制整數(shù),相同的數(shù)據(jù)位數(shù)超過(guò)第二預(yù)設(shè)閾值時(shí),則該圖片的特征值的相似度大于第一預(yù)設(shè)閾值。
有益效果
本發(fā)明提供了一種應(yīng)用啟動(dòng)速度的測(cè)試裝置、終端及方法,該應(yīng)用啟動(dòng)速度的測(cè)試裝置包括拆分模塊,用于將拍攝的應(yīng)用啟動(dòng)過(guò)程的視頻按預(yù)設(shè)幀率拆分成圖片;記錄模塊,用于記錄每張圖片的拍攝時(shí)間點(diǎn);計(jì)算模塊,用于根據(jù)預(yù)設(shè)圖像算法計(jì)算每張圖片的特征值;比較模塊,用于按照?qǐng)D片的拍攝時(shí)間點(diǎn)的先后順序依次將每張圖片的特征值與最后一張圖片的特征值進(jìn)行比較;第一確定模塊,用于將第一次出現(xiàn)與最后一張圖片的特征值的相似度大于第一預(yù)設(shè)閾值的圖片作為目標(biāo)圖片;第二確定模塊,用于根據(jù)目標(biāo)圖片的拍攝時(shí)間點(diǎn)以及應(yīng)用啟動(dòng)時(shí)的拍攝時(shí)間點(diǎn),確定應(yīng)用的啟動(dòng)速度;采用上述方案,在進(jìn)行應(yīng)用啟動(dòng)速度的測(cè)試時(shí),通過(guò)預(yù)設(shè)圖像算法計(jì)算每張圖片的特征值,采用按照?qǐng)D片的拍攝時(shí)間點(diǎn)的先后順序依次將每張圖片的特征值與最后一張圖片的特征值進(jìn)行比較的方式,找出應(yīng)用啟動(dòng)完成的時(shí)間點(diǎn),進(jìn)而確定出應(yīng)用的啟動(dòng)速度,真實(shí)的反應(yīng)出應(yīng)用的啟動(dòng)速度,提升了結(jié)果的準(zhǔn)確性,提高了效率。
附圖說(shuō)明
下面將結(jié)合附圖及實(shí)施例對(duì)本發(fā)明作進(jìn)一步說(shuō)明,附圖中:
圖1為實(shí)現(xiàn)本發(fā)明各個(gè)實(shí)施例一個(gè)可選的終端的硬件結(jié)構(gòu)示意圖;
圖2為本發(fā)明第一實(shí)施例提供的一種應(yīng)用啟動(dòng)速度的測(cè)試裝置的示意圖;
圖3為本發(fā)明第二實(shí)施例提供的一種終端的示意圖;
圖4為本發(fā)明第三實(shí)施例提供的一種應(yīng)用啟動(dòng)速度的測(cè)試方法的流程圖;
圖5為本發(fā)明第四實(shí)施例提供的另一種應(yīng)用啟動(dòng)速度的測(cè)試方法的流程圖。
具體實(shí)施方式
應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
現(xiàn)在將參考附圖描述實(shí)現(xiàn)本發(fā)明各個(gè)實(shí)施例的終端。在后續(xù)的描述中,使用用于表示元件的諸如“模塊”、“部件”或“單元”的后綴僅為了有利于本發(fā)明的說(shuō)明,其本身并沒(méi)有特定的意義。因此,"模塊"與"部件"可以混合地使用。
終端可以以各種形式來(lái)實(shí)施。例如,本發(fā)明中描述的終端可以包括諸如移動(dòng)電話、智能電話、筆記本電腦、數(shù)字廣播接收器、PDA(個(gè)人數(shù)字助理)、PAD(平板電腦)、PMP(便攜式多媒體播放器)、導(dǎo)航裝置等等的終端以及諸如數(shù)字TV、臺(tái)式計(jì)算機(jī)等等的固定終端。本領(lǐng)域技術(shù)人員將理解的是,本發(fā)明的方案適用于移動(dòng)終端,除了特別用于移動(dòng)目的的元件之外,根據(jù)本發(fā)明的實(shí)施方式的構(gòu)造也能夠應(yīng)用于固定類型的終端。
圖1為實(shí)現(xiàn)本發(fā)明各個(gè)實(shí)施例一個(gè)可選的終端的硬件結(jié)構(gòu)示意圖。
終端100可以包括無(wú)線通信單元110、A/V(音頻/視頻)輸入單元120、用戶輸入單元130、感測(cè)單元140、輸出單元150、存儲(chǔ)器160、控制器170等等。圖1示出了具有各種組件的終端,但是應(yīng)理解的是,并不要求實(shí)施所有示出的組件,可以替代地實(shí)施更多或更少的組件,將在下面詳細(xì)描述終端100的元件。
無(wú)線通信單元110通常包括一個(gè)或多個(gè)組件,其允許終端100與無(wú)線通信系統(tǒng)或網(wǎng)絡(luò)之間的無(wú)線電通信。例如,無(wú)線通信單元可以包括廣播接收模塊111、移動(dòng)通信模塊112、無(wú)線互聯(lián)網(wǎng)模塊113、短程通信模塊114和位置信息模塊115中的至少一個(gè)。
廣播接收模塊111經(jīng)由廣播信道從外部廣播管理服務(wù)器接收廣播信號(hào)和/或廣播相關(guān)信息。廣播信道可以包括衛(wèi)星信道和/或地面信道。廣播管理服務(wù)器可以是生成并發(fā)送廣播信號(hào)和/或廣播相關(guān)信息的服務(wù)器或者接收之前生成的廣播信號(hào)和/或廣播相關(guān)信息并且將其發(fā)送給終端100的服務(wù)器。廣播信號(hào)可以包括TV廣播信號(hào)、無(wú)線電廣播信號(hào)、數(shù)據(jù)廣播信號(hào)等等。而且,廣播信號(hào)可以進(jìn)一步包括與TV或無(wú)線電廣播信號(hào)組合的廣播信號(hào)。廣播相關(guān)信息也可以經(jīng)由移動(dòng)通信網(wǎng)絡(luò)提供,并且在該情況下,廣播相關(guān)信息可以由移動(dòng)通信模塊112來(lái)接收。廣播信號(hào)可以以各種形式存在,例如,其可以以數(shù)字多媒體廣播(DMB)的電子節(jié)目指南(EPG)、數(shù)字視頻廣播手持(DVB-H)的電子服務(wù)指南(ESG)等等的形式而存在。廣播接收模塊111可以通過(guò)使用各種類型的廣播系統(tǒng)接收信號(hào)廣播。特別地,廣播接收模塊111可以通過(guò)使用諸如多媒體廣播-地面(DMB-T)、數(shù)字多媒體廣播-衛(wèi)星(DMB-S)、數(shù)字視頻廣播-手持(DVB-H),前向鏈路媒體(MediaFLO@)的數(shù)據(jù)廣播系統(tǒng)、地面數(shù)字廣播綜合服務(wù)(ISDB-T)等等的數(shù)字廣播系統(tǒng)接收數(shù)字廣播。廣播接收模塊111可以被構(gòu)造為適合提供廣播信號(hào)的各種廣播系統(tǒng)以及上述數(shù)字廣播系統(tǒng)。經(jīng)由廣播接收模塊111接收的廣播信號(hào)和/或廣播相關(guān)信息可以存儲(chǔ)在存儲(chǔ)器160(或者其它類型的存儲(chǔ)介質(zhì))中。
移動(dòng)通信模塊112將無(wú)線電信號(hào)發(fā)送到基站(例如,接入點(diǎn)等等)、外部終端以及服務(wù)器中的至少一個(gè)和/或從其接收無(wú)線電信號(hào)。這樣的無(wú)線電信號(hào)可以包括語(yǔ)音通話信號(hào)、視頻通話信號(hào)、或者根據(jù)文本和/或多媒體消息發(fā)送和/或接收的各種類型的數(shù)據(jù)。
無(wú)線互聯(lián)網(wǎng)模塊113支持終端的無(wú)線互聯(lián)網(wǎng)接入。該模塊可以內(nèi)部或外部地耦接到終端100。該模塊所涉及的無(wú)線互聯(lián)網(wǎng)接入技術(shù)可以包括WLAN(無(wú)線LAN)(Wi-Fi)、Wibro(無(wú)線寬帶)、Wimax(全球微波互聯(lián)接入)、HSDPA(高速下行鏈路分組接入)等等。
短程通信模塊114是用于支持短程通信的模塊。短程通信技術(shù)的一些示例包括藍(lán)牙TM、射頻識(shí)別(RFID)、紅外數(shù)據(jù)協(xié)會(huì)(IrDA)、超寬帶(UWB)、紫蜂TM等等。
位置信息模塊115是用于檢查或獲取終端的位置信息的模塊。位置信息模塊115的典型示例是GPS(全球定位系統(tǒng))。根據(jù)當(dāng)前的技術(shù),GPS模塊115計(jì)算來(lái)自三個(gè)或更多衛(wèi)星的距離信息和準(zhǔn)確的時(shí)間信息并且對(duì)于計(jì)算的信息應(yīng)用三角測(cè)量法,從而根據(jù)經(jīng)度、緯度和高度準(zhǔn)確地計(jì)算三維當(dāng)前位置信息。當(dāng)前,用于計(jì)算位置和時(shí)間信息的方法使用三顆衛(wèi)星并且通過(guò)使用另外的一顆衛(wèi)星校正計(jì)算出的位置和時(shí)間信息的誤差。此外,GPS模塊115能夠通過(guò)實(shí)時(shí)地連續(xù)計(jì)算當(dāng)前位置信息來(lái)計(jì)算速度信息。
A/V輸入單元120用于接收音頻或視頻信號(hào)。A/V輸入單元120可以包括相機(jī)121和麥克風(fēng)122,相機(jī)121對(duì)在視頻捕獲模式或圖像捕獲模式中由圖像捕獲裝置獲得的靜態(tài)圖片或視頻的圖像數(shù)據(jù)進(jìn)行處理。處理后的圖像幀可以顯示在顯示模塊151上。經(jīng)相機(jī)121處理后的圖像幀可以存儲(chǔ)在存儲(chǔ)器160(或其它存儲(chǔ)介質(zhì))中或者經(jīng)由無(wú)線通信單元110進(jìn)行發(fā)送,可以根據(jù)終端100的構(gòu)造提供兩個(gè)或更多相機(jī)121。麥克風(fēng)122可以在電話通話模式、記錄模式、語(yǔ)音識(shí)別模式等等運(yùn)行模式中經(jīng)由麥克風(fēng)接收聲音(音頻數(shù)據(jù)),并且能夠?qū)⑦@樣的聲音處理為音頻數(shù)據(jù)。處理后的音頻(語(yǔ)音)數(shù)據(jù)可以在電話通話模式的情況下轉(zhuǎn)換為可經(jīng)由移動(dòng)通信模塊112發(fā)送到移動(dòng)通信基站的格式輸出。麥克風(fēng)122可以實(shí)施各種類型的噪聲消除(或抑制)算法以消除(或抑制)在接收和發(fā)送音頻信號(hào)的過(guò)程中產(chǎn)生的噪聲或者干擾。
用戶輸入單元130可以根據(jù)用戶輸入的命令生成鍵輸入數(shù)據(jù)以控制終端100的各種操作。用戶輸入單元130允許用戶輸入各種類型的信息,并且可以包括鍵盤(pán)、鍋?zhàn)衅?、觸摸板(例如,檢測(cè)由于被接觸而導(dǎo)致的電阻、壓力、電容等等的變化的觸敏組件)、滾輪、搖桿等等。特別地,當(dāng)觸摸板以層的形式疊加在顯示模塊151上時(shí),可以形成觸摸屏。
感測(cè)單元140檢測(cè)終端100的當(dāng)前狀態(tài),(例如,終端100的打開(kāi)或關(guān)閉狀態(tài))、終端100的位置、用戶對(duì)于終端100的接觸(即,觸摸輸入)的有無(wú)、終端100的取向、終端100的加速或減速移動(dòng)和方向等等,并且生成用于控制終端100的操作的命令或信號(hào)。例如,當(dāng)終端100實(shí)施為滑動(dòng)型移動(dòng)電話時(shí),感測(cè)單元140可以感測(cè)該滑動(dòng)型電話是打開(kāi)還是關(guān)閉。感測(cè)單元140可以包括接近傳感器141。
輸出單元150可以包括顯示模塊151、音頻輸出模塊152、警報(bào)模塊153等等。
顯示模塊151可以顯示在終端100中處理的信息。例如,當(dāng)終端100處于電話通話模式時(shí),顯示模塊151可以顯示與通話或其它通信(例如,文本消息收發(fā)、多媒體文件下載等等)相關(guān)的用戶界面(UI)或圖形用戶界面(GUI)。當(dāng)終端100處于視頻通話模式或者圖像捕獲模式時(shí),顯示模塊151可以顯示捕獲的圖像和/或接收的圖像、示出視頻或圖像以及相關(guān)功能的UI或GUI等等。
同時(shí),當(dāng)顯示模塊151和觸摸板以層的形式彼此疊加以形成觸摸屏?xí)r,顯示模塊151可以用作輸入裝置和輸出裝置。顯示模塊151可以包括液晶顯示器(LCD)、薄膜晶體管LCD(TFT-LCD)、有機(jī)發(fā)光二極管(OLED)顯示器、柔性顯示器、三維(3D)顯示器等等中的至少一種。這些顯示器中的一些可以被構(gòu)造為透明狀以允許用戶從外部觀看,這可以稱為透明顯示器,典型的透明顯示器可以例如為T(mén)OLED(透明有機(jī)發(fā)光二極管)顯示器等等。根據(jù)特定想要的實(shí)施方式,終端100可以包括兩個(gè)或更多顯示模塊(或其它顯示裝置),例如,終端100可以包括外部顯示模塊(未示出)和內(nèi)部顯示模塊(未示出)。觸摸屏可用于檢測(cè)觸摸輸入壓力以及觸摸輸入位置和觸摸輸入面積。
音頻輸出模塊152可以在終端處于呼叫信號(hào)接收模式、通話模式、記錄模式、語(yǔ)音識(shí)別模式、廣播接收模式等等模式下時(shí),將無(wú)線通信單元110接收的或者在存儲(chǔ)器160中存儲(chǔ)的音頻數(shù)據(jù)轉(zhuǎn)換音頻信號(hào)并且輸出為聲音。而且,音頻輸出模塊152可以提供與終端100執(zhí)行的特定功能相關(guān)的音頻輸出(例如,呼叫信號(hào)接收聲音、消息接收聲音等等)。音頻輸出模塊152可以包括揚(yáng)聲器、蜂鳴器等等。
警報(bào)模塊153可以提供輸出以將事件的發(fā)生通知給終端100。典型的事件可以包括呼叫接收、消息接收、鍵信號(hào)輸入、觸摸輸入等等。除了音頻或視頻輸出之外,警報(bào)模塊153可以以不同的方式提供輸出以通知事件的發(fā)生。例如,警報(bào)模塊153可以以振動(dòng)的形式提供輸出,當(dāng)接收到呼叫、消息或一些其它進(jìn)入通信(incoming communication)時(shí),警報(bào)模塊153可以提供觸覺(jué)輸出(即,振動(dòng))以將其通知給用戶。通過(guò)提供這樣的觸覺(jué)輸出,即使在用戶的移動(dòng)電話處于用戶的口袋中時(shí),用戶也能夠識(shí)別出各種事件的發(fā)生。警報(bào)模塊153也可以經(jīng)由顯示模塊151或音頻輸出模塊152提供通知事件的發(fā)生的輸出。
存儲(chǔ)器160可以存儲(chǔ)由控制器170執(zhí)行的處理和控制操作的軟件程序等等,或者可以暫時(shí)地存儲(chǔ)己經(jīng)輸出或?qū)⒁敵龅臄?shù)據(jù)(例如,電話簿、消息、靜態(tài)圖像、視頻等等)。而且,存儲(chǔ)器160可以存儲(chǔ)關(guān)于當(dāng)觸摸施加到觸摸屏?xí)r輸出的各種方式的振動(dòng)和音頻信號(hào)的數(shù)據(jù)。
存儲(chǔ)器160可以包括至少一種類型的存儲(chǔ)介質(zhì),存儲(chǔ)介質(zhì)包括閃存、硬盤(pán)、多媒體卡、卡型存儲(chǔ)器(例如,SD或DX存儲(chǔ)器等等)、隨機(jī)訪問(wèn)存儲(chǔ)器(RAM)、靜態(tài)隨機(jī)訪問(wèn)存儲(chǔ)器(SRAM)、只讀存儲(chǔ)器(ROM)、電可擦除可編程只讀存儲(chǔ)器(EEPROM)、可編程只讀存儲(chǔ)器(PROM)、磁性存儲(chǔ)器、磁盤(pán)、光盤(pán)等等。而且,終端100可以與通過(guò)網(wǎng)絡(luò)連接執(zhí)行存儲(chǔ)器160的存儲(chǔ)功能的網(wǎng)絡(luò)存儲(chǔ)裝置協(xié)作。
控制器170通常控制終端的總體操作。例如,控制器170執(zhí)行與語(yǔ)音通話、數(shù)據(jù)通信、視頻通話等等相關(guān)的控制和處理??刂破?70可以執(zhí)行模式識(shí)別處理,以將在觸摸屏上執(zhí)行的手寫(xiě)輸入或者圖片繪制輸入識(shí)別為字符或圖像。
這里描述的各種實(shí)施方式可以以使用例如計(jì)算機(jī)軟件、硬件或其任何組合的計(jì)算機(jī)可讀介質(zhì)來(lái)實(shí)施。對(duì)于硬件實(shí)施,這里描述的實(shí)施方式可以通過(guò)使用特定用途集成電路(ASIC)、數(shù)字信號(hào)處理器(DSP)、數(shù)字信號(hào)處理裝置(DSPD)、可編程邏輯裝置(PLD)、現(xiàn)場(chǎng)可編程門(mén)陣列(FPGA)、處理器、控制器、微控制器、微處理器、被設(shè)計(jì)為執(zhí)行這里描述的功能的電子單元中的至少一種來(lái)實(shí)施,在一些情況下,這樣的實(shí)施方式可以在控制器170中實(shí)施。對(duì)于軟件實(shí)施,諸如過(guò)程或功能的實(shí)施方式可以與允許執(zhí)行至少一種功能或操作的單獨(dú)的軟件模塊來(lái)實(shí)施。軟件代碼可以由以任何適當(dāng)?shù)木幊陶Z(yǔ)言編寫(xiě)的軟件應(yīng)用程序(或程序)來(lái)實(shí)施,軟件代碼可以存儲(chǔ)在存儲(chǔ)器160中并且由控制器170執(zhí)行。
至此,己經(jīng)按照其功能描述了終端。下面,為了簡(jiǎn)要起見(jiàn),將描述諸如折疊型、直板型、擺動(dòng)型、滑動(dòng)型終端等等的各種類型的終端中的滑動(dòng)型終端作為示例。因此,本發(fā)明能夠應(yīng)用于任何類型的終端,并且不限于滑動(dòng)型終端。
基于上述終端硬件結(jié)構(gòu),以下通過(guò)具體實(shí)施例對(duì)本發(fā)明進(jìn)行詳細(xì)說(shuō)明。
第一實(shí)施例
本實(shí)施例提供了一種應(yīng)用啟動(dòng)速度的測(cè)試裝置,參見(jiàn)圖2,圖2為本發(fā)明第一實(shí)施例提供的一種應(yīng)用啟動(dòng)速度的測(cè)試裝置的示意圖,該應(yīng)用啟動(dòng)速度的測(cè)試裝置包括:拆分模塊201、記錄模塊202、計(jì)算模塊203、比較模塊204、第一確定模塊205、第二確定模塊206,其中,
拆分模塊201,用于將拍攝的應(yīng)用啟動(dòng)過(guò)程的視頻按預(yù)設(shè)幀率拆分成圖片;
首先采用高速攝像機(jī)拍攝應(yīng)用啟動(dòng)過(guò)程的視頻,應(yīng)用可以是微信、QQ、微博、電話本等等;
示例性的,預(yù)設(shè)幀率可以是120FPS(Frames Per Second,每秒傳輸幀數(shù));
示例性的,視頻分幀采用第三方開(kāi)源工具FFMPEG,分幀命令如下:
“Ffmpeng–V videoFile–f image2–vf fps=fps=20pngFile”
記錄模塊202,用于記錄每張圖片的拍攝時(shí)間點(diǎn);
例如拆分模塊201拆分的第一張圖片是拍攝應(yīng)用啟動(dòng)過(guò)程的視頻的第0.1秒,則記錄模塊202記錄第一張圖片的拍攝時(shí)間點(diǎn)為0.1秒;拆分模塊201拆分的第二張圖片是拍攝應(yīng)用啟動(dòng)過(guò)程的視頻的第0.2秒,則記錄模塊202記錄第二張圖片的拍攝時(shí)間點(diǎn)為0.2秒。
計(jì)算模塊203,用于根據(jù)預(yù)設(shè)圖像算法計(jì)算每張圖片的特征值;
其中,計(jì)算模塊203包括:縮小子模塊2031、轉(zhuǎn)換子模塊2032、第一計(jì)算子模塊2033、第二計(jì)算子模塊2034、比較子模塊2035、組合子模塊2036、確定子模塊2037,其中,
縮小子模塊2031,用于將圖片縮小到預(yù)設(shè)尺寸大小,以摒棄不同尺寸、比例帶來(lái)的圖片差異,只保留結(jié)構(gòu)、明暗等基本信息;例如將圖片縮小到8x8的尺寸,總共64個(gè)像素點(diǎn)。
轉(zhuǎn)換子模塊2032,用于將縮小子模塊2031縮小后的圖片轉(zhuǎn)換為灰度圖片;示例性的,可以轉(zhuǎn)換為64級(jí)灰度圖片,也就是說(shuō),所有像素點(diǎn)總共只有64種顏色。
第一計(jì)算子模塊2033,用于按照預(yù)設(shè)算法計(jì)算灰度圖片的每個(gè)像素點(diǎn)的灰度值;
其中,預(yù)設(shè)算法包括:離散余弦變換算法(DCT for Discrete Cosine Transform)。
第一計(jì)算子模塊2033計(jì)算每個(gè)像素點(diǎn)的灰度值時(shí)采用離散余弦變換算法,變換過(guò)程如下:
定義變換矩陣C[n,m]:
為了使其正交化,引入系數(shù)a[n]:
得到正交DCT:
對(duì)于正交余弦變換矩陣就有:
C-1=CT或CTC=I
通過(guò)上述公式,便能計(jì)算出每個(gè)像素點(diǎn)的灰度值。
第二計(jì)算子模塊2034,用于計(jì)算灰度圖片的灰度平均值;
在計(jì)算到灰度圖片的每個(gè)像素點(diǎn)的灰度值之后,便可以進(jìn)一步計(jì)算出灰度平均值。
比較子模塊2035,用于將每個(gè)像素點(diǎn)的灰度值與灰度平均值進(jìn)行比較,得到每個(gè)像素點(diǎn)的比較結(jié)果;每個(gè)像素點(diǎn)的比較結(jié)果包括:當(dāng)像素點(diǎn)的灰度值大于或等于灰度平均值時(shí),記為1;小于灰度平均值時(shí),記為0。
組合子模塊2036,用于將每個(gè)像素點(diǎn)的比較結(jié)果按照預(yù)設(shè)次序進(jìn)行組合,得到預(yù)設(shè)位數(shù)的二進(jìn)制整數(shù);
示例性的,當(dāng)將圖片縮小到8x8的尺寸,總共64個(gè)像素點(diǎn),64個(gè)像素點(diǎn)排列成8行8列時(shí),對(duì)每個(gè)像素點(diǎn)進(jìn)行編號(hào),第一行的8個(gè)像素點(diǎn)從左到右依次編號(hào)為1、2、3、4、5、6、7、8,第二行的8個(gè)像素點(diǎn)從左到右依次編號(hào)為9、10、11…16,以此類推,第八行的8個(gè)像素點(diǎn)從左到右依次編號(hào)為57、58、59…64,示例性的,預(yù)設(shè)次序可以是按照編號(hào)由小到大的順序,即順序依次為編號(hào)1、2、3、4…64;預(yù)設(shè)次序還可以是按照編號(hào)由大到小的順序,即順序依次為編號(hào)64、63、62、61…1;
其中,在組合子模塊2036將每個(gè)像素點(diǎn)的比較結(jié)果按照預(yù)設(shè)次序進(jìn)行組合的過(guò)程中,還包括:同一個(gè)視頻的每張圖片采用的預(yù)設(shè)次序相同。
確定子模塊2037,用于將預(yù)設(shè)位數(shù)的二進(jìn)制整數(shù)作為該張圖片的特征值,即哈希值;
示例性的,當(dāng)將圖片縮小到8x8的尺寸,總共64個(gè)像素點(diǎn)時(shí),組合子模塊2036將每個(gè)像素點(diǎn)的比較結(jié)果按照預(yù)設(shè)次序進(jìn)行組合,就構(gòu)成了一個(gè)64位的二進(jìn)制整數(shù),確定子模塊2037則確定出該64位的二進(jìn)制整數(shù)就是該張圖片的特征值。
比較模塊204,用于按照?qǐng)D片的拍攝時(shí)間點(diǎn)的先后順序依次將每張圖片的特征值與最后一張圖片的特征值進(jìn)行比較;
應(yīng)用在啟動(dòng)完成后,若高速攝像機(jī)仍在拍攝,則拆分模塊201在將應(yīng)用啟動(dòng)完成后的這部分視頻拆分成圖片后,這部分圖片的相似度比較高,因?yàn)閼?yīng)用在啟動(dòng)完成后所顯示的界面會(huì)保持不變,而最后一張圖片必然已經(jīng)繪制完成,即最后一張圖片必然是應(yīng)用已經(jīng)啟動(dòng)完成后的界面,所以選取最后一張圖片作為基準(zhǔn)圖片;
第一確定模塊205,用于將第一次出現(xiàn)與最后一張圖片的特征值的相似度大于第一預(yù)設(shè)閾值的圖片作為目標(biāo)圖片;
其中,比較模塊204具體用于將每張圖片的預(yù)設(shè)位數(shù)的二進(jìn)制整數(shù)與最后一張圖片的預(yù)設(shè)位數(shù)的二進(jìn)制整數(shù),按位一一進(jìn)行比對(duì);第一確定模塊205具體用于當(dāng)圖片的預(yù)設(shè)位數(shù)的二進(jìn)制整數(shù)與最后一張圖片的預(yù)設(shè)位數(shù)的二進(jìn)制整數(shù),相同的數(shù)據(jù)位數(shù)超過(guò)第二預(yù)設(shè)閾值時(shí),則確定該圖片的特征值的相似度大于第一預(yù)設(shè)閾值;
示例性的,第一預(yù)設(shè)閾值可以為92%,第二預(yù)設(shè)閾值可以為59,當(dāng)將圖片縮小到8x8的尺寸,總共64個(gè)像素點(diǎn)時(shí),計(jì)算出64位中有多少位是一樣的,如果相同的數(shù)據(jù)位數(shù)超過(guò)59,就說(shuō)明兩張圖片的相似度大于92%,如果相同的數(shù)據(jù)位數(shù)小于54,可以說(shuō)明它們是兩張不同的圖片。
第二確定模塊206,用于根據(jù)目標(biāo)圖片的拍攝時(shí)間點(diǎn)以及應(yīng)用啟動(dòng)時(shí)的拍攝時(shí)間點(diǎn),確定應(yīng)用的啟動(dòng)速度;
第二確定模塊206具體用于根據(jù)目標(biāo)圖片的拍攝時(shí)間點(diǎn)減去應(yīng)用啟動(dòng)時(shí)的拍攝時(shí)間點(diǎn),得到應(yīng)用的啟動(dòng)速度;
確定應(yīng)用啟動(dòng)時(shí)的拍攝時(shí)間點(diǎn)可以采用軟件程序來(lái)實(shí)現(xiàn),通過(guò)軟件程序?qū)崿F(xiàn)應(yīng)用的啟動(dòng),并相應(yīng)記錄啟動(dòng)時(shí)間點(diǎn),無(wú)需通過(guò)人為操作來(lái)啟動(dòng)應(yīng)用。
采用java實(shí)現(xiàn)本方案的Demo具體如下:
下面例舉一個(gè)具體的例子對(duì)本方案進(jìn)行進(jìn)一步說(shuō)明。
使用高速攝像機(jī)拍攝電話本啟動(dòng)過(guò)程的視頻;
將視頻按120FPS拆分成圖片,并記錄每張圖片的拍攝時(shí)間點(diǎn);
選取最后一張圖片,使用預(yù)設(shè)圖像算法計(jì)算出最后一張圖片的特征值,記為FP_lastpic,F(xiàn)P_lastpic為64位的一個(gè)字符串,即FP_lastpic=3fcfb30c8730c8330c033fcff;
使用預(yù)設(shè)圖像算法計(jì)算每一張圖片的特征值;
按照?qǐng)D片的拍攝時(shí)間點(diǎn)的先后順序依次將每張圖片的特征值與最后一張圖片的特征值進(jìn)行比較,即與FP_lastpic比較;
將第一次出現(xiàn)與最后一張圖片的特征值的相似度大于第一預(yù)設(shè)閾值的圖片作為目標(biāo)圖片,目標(biāo)圖片的拍攝時(shí)間點(diǎn)記為T(mén)_aim;
使用T_aim減去應(yīng)用啟動(dòng)時(shí)的拍攝時(shí)間點(diǎn)即為電話本的啟動(dòng)速度。
通過(guò)本實(shí)施例的實(shí)施,在進(jìn)行應(yīng)用啟動(dòng)速度的測(cè)試時(shí),通過(guò)預(yù)設(shè)圖像算法計(jì)算每張圖片的特征值,采用按照?qǐng)D片的拍攝時(shí)間點(diǎn)的先后順序依次將每張圖片的特征值與最后一張圖片的特征值進(jìn)行比較的方式,找出應(yīng)用啟動(dòng)完成的時(shí)間點(diǎn),進(jìn)而確定出應(yīng)用的啟動(dòng)速度,真實(shí)的反應(yīng)出應(yīng)用的啟動(dòng)速度,提升了結(jié)果的準(zhǔn)確性,提高了效率。
第二實(shí)施例
本實(shí)施例提供一種終端,參見(jiàn)圖3,圖3為本實(shí)施例提供的一種終端的示意圖,該終端包括第一實(shí)施例中的應(yīng)用啟動(dòng)速度的測(cè)試裝置。上述應(yīng)用啟動(dòng)速度的測(cè)試裝置的各功能模塊執(zhí)行的功能可通過(guò)圖1中的部分硬件來(lái)實(shí)現(xiàn),當(dāng)然,各硬件執(zhí)行的功能也可由上述功能模塊實(shí)現(xiàn)。上述各功能模塊的功能具體由如下硬件實(shí)現(xiàn):
拆分模塊201、記錄模塊202、計(jì)算模塊203、比較模塊204、第一確定模塊205、第二確定模塊206、縮小子模塊2031、轉(zhuǎn)換子模塊2032、第一計(jì)算子模塊2033、第二計(jì)算子模塊2034、比較子模塊2035、組合子模塊2036、確定子模塊2037的功能均可由軟件代碼來(lái)實(shí)現(xiàn),軟件代碼可以由以任何適當(dāng)?shù)木幊陶Z(yǔ)言編寫(xiě)的軟件應(yīng)用程序(或程序)來(lái)實(shí)施,軟件代碼可以存儲(chǔ)在存儲(chǔ)器160中并且由控制器170執(zhí)行。
控制器170用于將拍攝的應(yīng)用啟動(dòng)過(guò)程的視頻按預(yù)設(shè)幀率拆分成圖片;
首先采用高速攝像機(jī)拍攝應(yīng)用啟動(dòng)過(guò)程的視頻,應(yīng)用可以是微信、QQ、微博、電話本等等;
示例性的,預(yù)設(shè)幀率可以是120FPS;
示例性的,視頻分幀采用第三方開(kāi)源工具FFMPEG,分幀命令如下:
“Ffmpeng–V videoFile–f image2–vf fps=fps=20pngFile”
控制器170,用于記錄每張圖片的拍攝時(shí)間點(diǎn);
例如控制器170拆分的第一張圖片是拍攝應(yīng)用啟動(dòng)過(guò)程的視頻的第0.1秒,則記錄第一張圖片的拍攝時(shí)間點(diǎn)為0.1秒;拆分的第二張圖片是拍攝應(yīng)用啟動(dòng)過(guò)程的視頻的第0.2秒,則記錄第二張圖片的拍攝時(shí)間點(diǎn)為0.2秒。
控制器170,用于根據(jù)預(yù)設(shè)圖像算法計(jì)算每張圖片的特征值;
控制器170,用于將圖片縮小到預(yù)設(shè)尺寸大小,以摒棄不同尺寸、比例帶來(lái)的圖片差異,只保留結(jié)構(gòu)、明暗等基本信息;例如將圖片縮小到8x8的尺寸,總共64個(gè)像素點(diǎn)。
控制器170將縮小后的圖片轉(zhuǎn)換為灰度圖片;示例性的,可以轉(zhuǎn)換為64級(jí)灰度圖片,也就是說(shuō),所有像素點(diǎn)總共只有64種顏色。
控制器170按照預(yù)設(shè)算法計(jì)算灰度圖片的每個(gè)像素點(diǎn)的灰度值;
其中,預(yù)設(shè)算法包括:離散余弦變換算法。
控制器170計(jì)算每個(gè)像素點(diǎn)的灰度值時(shí)采用離散余弦變換算法,變換過(guò)程如下:
定義變換矩陣C[n,m]:
為了使其正交化,引入系數(shù)a[n]:
得到正交DCT:
對(duì)于正交余弦變換矩陣就有:
C-1=CT或CTC=I
通過(guò)上述公式,便能計(jì)算出每個(gè)像素點(diǎn)的灰度值。
控制器170計(jì)算灰度圖片的灰度平均值;
在計(jì)算到灰度圖片的每個(gè)像素點(diǎn)的灰度值之后,便可以進(jìn)一步計(jì)算出灰度平均值。
控制器170將每個(gè)像素點(diǎn)的灰度值與灰度平均值進(jìn)行比較,得到每個(gè)像素點(diǎn)的比較結(jié)果;每個(gè)像素點(diǎn)的比較結(jié)果包括:當(dāng)像素點(diǎn)的灰度值大于或等于灰度平均值時(shí),記為1;小于灰度平均值時(shí),記為0。
控制器170將每個(gè)像素點(diǎn)的比較結(jié)果按照預(yù)設(shè)次序進(jìn)行組合,得到預(yù)設(shè)位數(shù)的二進(jìn)制整數(shù);
示例性的,當(dāng)將圖片縮小到8x8的尺寸,總共64個(gè)像素點(diǎn),64個(gè)像素點(diǎn)排列成8行8列時(shí),對(duì)每個(gè)像素點(diǎn)進(jìn)行編號(hào),第一行的8個(gè)像素點(diǎn)從左到右依次編號(hào)為1、2、3、4、5、6、7、8,第二行的8個(gè)像素點(diǎn)從左到右依次編號(hào)為9、10、11…16,以此類推,第八行的8個(gè)像素點(diǎn)從左到右依次編號(hào)為57、58、59…64,示例性的,預(yù)設(shè)次序可以是按照編號(hào)由小到大的順序,即順序依次為編號(hào)1、2、3、4…64;預(yù)設(shè)次序還可以是按照編號(hào)由大到小的順序,即順序依次為編號(hào)64、63、62、61…1;
其中,在控制器170將每個(gè)像素點(diǎn)的比較結(jié)果按照預(yù)設(shè)次序進(jìn)行組合的過(guò)程中,還包括:同一個(gè)視頻的每張圖片采用的預(yù)設(shè)次序相同。
控制器170將預(yù)設(shè)位數(shù)的二進(jìn)制整數(shù)作為該張圖片的特征值,即哈希值;
示例性的,當(dāng)將圖片縮小到8x8的尺寸,總共64個(gè)像素點(diǎn)時(shí),控制器170將每個(gè)像素點(diǎn)的比較結(jié)果按照預(yù)設(shè)次序進(jìn)行組合,就構(gòu)成了一個(gè)64位的二進(jìn)制整數(shù),控制器170則確定出該64位的二進(jìn)制整數(shù)就是該張圖片的特征值。
控制器170按照?qǐng)D片的拍攝時(shí)間點(diǎn)的先后順序依次將每張圖片的特征值與最后一張圖片的特征值進(jìn)行比較;
應(yīng)用在啟動(dòng)完成后,若高速攝像機(jī)仍在拍攝,則控制器170在將應(yīng)用啟動(dòng)完成后的這部分視頻拆分成圖片后,這部分圖片的相似度比較高,因?yàn)閼?yīng)用在啟動(dòng)完成后所顯示的界面會(huì)保持不變,而最后一張圖片必然已經(jīng)繪制完成,即最后一張圖片必然是應(yīng)用已經(jīng)啟動(dòng)完成后的界面,所以選取最后一張圖片作為基準(zhǔn)圖片;
控制器170將第一次出現(xiàn)與最后一張圖片的特征值的相似度大于第一預(yù)設(shè)閾值的圖片作為目標(biāo)圖片;
其中,控制器170將每張圖片的預(yù)設(shè)位數(shù)的二進(jìn)制整數(shù)與最后一張圖片的預(yù)設(shè)位數(shù)的二進(jìn)制整數(shù),按位一一進(jìn)行比對(duì);當(dāng)圖片的預(yù)設(shè)位數(shù)的二進(jìn)制整數(shù)與最后一張圖片的預(yù)設(shè)位數(shù)的二進(jìn)制整數(shù),相同的數(shù)據(jù)位數(shù)超過(guò)第二預(yù)設(shè)閾值時(shí),則確定該圖片的特征值的相似度大于第一預(yù)設(shè)閾值;
示例性的,第一預(yù)設(shè)閾值可以為92%,第二預(yù)設(shè)閾值可以為59,當(dāng)將圖片縮小到8x8的尺寸,總共64個(gè)像素點(diǎn)時(shí),計(jì)算出64位中有多少位是一樣的,如果相同的數(shù)據(jù)位數(shù)超過(guò)59,就說(shuō)明兩張圖片的相似度大于92%,如果相同的數(shù)據(jù)位數(shù)小于54,可以說(shuō)明它們是兩張不同的圖片。
控制器170根據(jù)目標(biāo)圖片的拍攝時(shí)間點(diǎn)以及應(yīng)用啟動(dòng)時(shí)的拍攝時(shí)間點(diǎn),確定應(yīng)用的啟動(dòng)速度;
控制器170根據(jù)目標(biāo)圖片的拍攝時(shí)間點(diǎn)減去應(yīng)用啟動(dòng)時(shí)的拍攝時(shí)間點(diǎn),得到應(yīng)用的啟動(dòng)速度;
確定應(yīng)用啟動(dòng)時(shí)的拍攝時(shí)間點(diǎn)可以采用軟件程序來(lái)實(shí)現(xiàn),通過(guò)軟件程序?qū)崿F(xiàn)應(yīng)用的啟動(dòng),并相應(yīng)記錄啟動(dòng)時(shí)間點(diǎn),無(wú)需通過(guò)人為操作來(lái)啟動(dòng)應(yīng)用。
采用java實(shí)現(xiàn)本方案的Demo具體如下:
下面例舉一個(gè)具體的例子對(duì)本方案進(jìn)行進(jìn)一步說(shuō)明。
使用高速攝像機(jī)拍攝電話本啟動(dòng)過(guò)程的視頻;
將視頻按120FPS拆分成圖片,并記錄每張圖片的拍攝時(shí)間點(diǎn);
選取最后一張圖片,使用預(yù)設(shè)圖像算法計(jì)算出最后一張圖片的特征值,記為FP_lastpic,FP_lastpic為64位的一個(gè)字符串,即FP_lastpic=3fcfb30c8730c8330c033fcff;
使用預(yù)設(shè)圖像算法計(jì)算每一張圖片的特征值;
按照?qǐng)D片的拍攝時(shí)間點(diǎn)的先后順序依次將每張圖片的特征值與最后一張圖片的特征值進(jìn)行比較,即與FP_lastpic比較;
將第一次出現(xiàn)與最后一張圖片的特征值的相似度大于第一預(yù)設(shè)閾值的圖片作為目標(biāo)圖片,目標(biāo)圖片的拍攝時(shí)間點(diǎn)記為T(mén)_aim;
使用T_aim減去應(yīng)用啟動(dòng)時(shí)的拍攝時(shí)間點(diǎn)即為電話本的啟動(dòng)速度。
通過(guò)本實(shí)施例的實(shí)施,在進(jìn)行應(yīng)用啟動(dòng)速度的測(cè)試時(shí),通過(guò)預(yù)設(shè)圖像算法計(jì)算每張圖片的特征值,采用按照?qǐng)D片的拍攝時(shí)間點(diǎn)的先后順序依次將每張圖片的特征值與最后一張圖片的特征值進(jìn)行比較的方式,找出應(yīng)用啟動(dòng)完成的時(shí)間點(diǎn),進(jìn)而確定出應(yīng)用的啟動(dòng)速度,真實(shí)的反應(yīng)出應(yīng)用的啟動(dòng)速度,提升了結(jié)果的準(zhǔn)確性,提高了效率。
第三實(shí)施例
本實(shí)施例提供了一種應(yīng)用啟動(dòng)速度的測(cè)試方法,參見(jiàn)圖4,圖4為本實(shí)施例提供的應(yīng)用啟動(dòng)速度的測(cè)試方法的流程圖,該方法包括以下步驟:
S401:將拍攝的應(yīng)用啟動(dòng)過(guò)程的視頻按預(yù)設(shè)幀率拆分成圖片,并記錄每張圖片的拍攝時(shí)間點(diǎn)。
首先采用高速攝像機(jī)拍攝應(yīng)用啟動(dòng)過(guò)程的視頻,應(yīng)用可以是微信、QQ、微博、電話本等等;
示例性的,預(yù)設(shè)幀率可以是120FPS;
示例性的,視頻分幀采用第三方開(kāi)源工具FFMPEG,分幀命令如下:
“Ffmpeng–V videoFile–f image2–vf fps=fps=20pngFile”
例如拆分的第一張圖片是拍攝應(yīng)用啟動(dòng)過(guò)程的視頻的第0.1秒,則記錄第一張圖片的拍攝時(shí)間點(diǎn)為0.1秒;拆分的第二張圖片是拍攝應(yīng)用啟動(dòng)過(guò)程的視頻的第0.2秒,則記錄第二張圖片的拍攝時(shí)間點(diǎn)為0.2秒。
S402:根據(jù)預(yù)設(shè)圖像算法計(jì)算每張圖片的特征值。
其中,根據(jù)預(yù)設(shè)圖像算法計(jì)算每張圖片的特征值包括:
將圖片縮小到預(yù)設(shè)尺寸大小,以摒棄不同尺寸、比例帶來(lái)的圖片差異,只保留結(jié)構(gòu)、明暗等基本信息;例如將圖片縮小到8x8的尺寸,總共64個(gè)像素點(diǎn);并將縮小后的圖片轉(zhuǎn)換為灰度圖片;示例性的,可以轉(zhuǎn)換為64級(jí)灰度圖片,也就是說(shuō),所有像素點(diǎn)總共只有64種顏色。將其轉(zhuǎn)換為灰度圖片;
按照預(yù)設(shè)算法計(jì)算灰度圖片的每個(gè)像素點(diǎn)的灰度值;其中,預(yù)設(shè)算法包括:離散余弦變換算法;
計(jì)算每個(gè)像素點(diǎn)的灰度值時(shí)采用離散余弦變換算法,變換過(guò)程如下:
定義變換矩陣C[n,m]:
為了使其正交化,引入系數(shù)a[n]:
得到正交DCT:
對(duì)于正交余弦變換矩陣就有:
C-1=CT或CTC=I
通過(guò)上述公式,便能計(jì)算出每個(gè)像素點(diǎn)的灰度值。
計(jì)算灰度圖片的灰度平均值;在計(jì)算到灰度圖片的每個(gè)像素點(diǎn)的灰度值之后,便可以進(jìn)一步計(jì)算出灰度平均值。
將每個(gè)像素點(diǎn)的灰度值與灰度平均值進(jìn)行比較,得到每個(gè)像素點(diǎn)的比較結(jié)果;每個(gè)像素點(diǎn)的比較結(jié)果包括:當(dāng)像素點(diǎn)的灰度值大于或等于灰度平均值時(shí),記為1;小于灰度平均值時(shí),記為0;
將每個(gè)像素點(diǎn)的比較結(jié)果按照預(yù)設(shè)次序進(jìn)行組合,得到預(yù)設(shè)位數(shù)的二進(jìn)制整數(shù);
示例性的,當(dāng)將圖片縮小到8x8的尺寸,總共64個(gè)像素點(diǎn),64個(gè)像素點(diǎn)排列成8行8列時(shí),對(duì)每個(gè)像素點(diǎn)進(jìn)行編號(hào),第一行的8個(gè)像素點(diǎn)從左到右依次編號(hào)為1、2、3、4、5、6、7、8,第二行的8個(gè)像素點(diǎn)從左到右依次編號(hào)為9、10、11…16,以此類推,第八行的8個(gè)像素點(diǎn)從左到右依次編號(hào)為57、58、59…64,示例性的,預(yù)設(shè)次序可以是按照編號(hào)由小到大的順序,即順序依次為編號(hào)1、2、3、4…64;預(yù)設(shè)次序還可以是按照編號(hào)由大到小的順序,即順序依次為編號(hào)64、63、62、61…1;
其中,在將每個(gè)像素點(diǎn)的比較結(jié)果按照預(yù)設(shè)次序進(jìn)行組合的過(guò)程中,還包括:同一個(gè)視頻的每張圖片采用的預(yù)設(shè)次序相同。
將預(yù)設(shè)位數(shù)的二進(jìn)制整數(shù)作為該張圖片的特征值,即哈希值;
示例性的,當(dāng)將圖片縮小到8x8的尺寸,總共64個(gè)像素點(diǎn)時(shí),組合子模塊2036將每個(gè)像素點(diǎn)的比較結(jié)果按照預(yù)設(shè)次序進(jìn)行組合,就構(gòu)成了一個(gè)64位的二進(jìn)制整數(shù),則確定出該64位的二進(jìn)制整數(shù)就是該張圖片的特征值。
S403:按照?qǐng)D片的拍攝時(shí)間點(diǎn)的先后順序依次將每張圖片的特征值與最后一張圖片的特征值進(jìn)行比較。
應(yīng)用在啟動(dòng)完成后,若高速攝像機(jī)仍在拍攝,則在將應(yīng)用啟動(dòng)完成后的這部分視頻拆分成圖片后,這部分圖片的相似度比較高,因?yàn)閼?yīng)用在啟動(dòng)完成后所顯示的界面會(huì)保持不變,而最后一張圖片必然已經(jīng)繪制完成,即最后一張圖片必然是應(yīng)用已經(jīng)啟動(dòng)完成后的界面,所以選取最后一張圖片作為基準(zhǔn)圖片;
其中,將每張圖片的特征值與最后一張圖片的特征值進(jìn)行比較包括:
將每張圖片的預(yù)設(shè)位數(shù)的二進(jìn)制整數(shù)與最后一張圖片的預(yù)設(shè)位數(shù)的二進(jìn)制整數(shù),按位一一進(jìn)行比對(duì);
當(dāng)圖片的預(yù)設(shè)位數(shù)的二進(jìn)制整數(shù)與最后一張圖片的預(yù)設(shè)位數(shù)的二進(jìn)制整數(shù),相同的數(shù)據(jù)位數(shù)超過(guò)第二預(yù)設(shè)閾值時(shí),則該圖片的特征值的相似度大于第一預(yù)設(shè)閾值。
示例性的,第一預(yù)設(shè)閾值可以為92%,第二預(yù)設(shè)閾值可以為59,當(dāng)將圖片縮小到8x8的尺寸,總共64個(gè)像素點(diǎn)時(shí),計(jì)算出64位中有多少位是一樣的,如果相同的數(shù)據(jù)位數(shù)超過(guò)59,就說(shuō)明兩張圖片的相似度大于92%,如果相同的數(shù)據(jù)位數(shù)小于54,可以說(shuō)明它們是兩張不同的圖片。
S404:將第一次出現(xiàn)與最后一張圖片的特征值的相似度大于第一預(yù)設(shè)閾值的圖片作為目標(biāo)圖片。
S405:根據(jù)目標(biāo)圖片的拍攝時(shí)間點(diǎn)以及應(yīng)用啟動(dòng)時(shí)的拍攝時(shí)間點(diǎn),確定應(yīng)用的啟動(dòng)速度;
根據(jù)目標(biāo)圖片的拍攝時(shí)間點(diǎn)減去應(yīng)用啟動(dòng)時(shí)的拍攝時(shí)間點(diǎn),得到應(yīng)用的啟動(dòng)速度;
確定應(yīng)用啟動(dòng)時(shí)的拍攝時(shí)間點(diǎn)可以采用軟件程序來(lái)實(shí)現(xiàn),通過(guò)軟件程序?qū)崿F(xiàn)應(yīng)用的啟動(dòng),并相應(yīng)記錄啟動(dòng)時(shí)間點(diǎn),無(wú)需通過(guò)人為操作來(lái)啟動(dòng)應(yīng)用。
采用java實(shí)現(xiàn)本方案的Demo具體如下:
通過(guò)本實(shí)施例的實(shí)施,在進(jìn)行應(yīng)用啟動(dòng)速度的測(cè)試時(shí),通過(guò)預(yù)設(shè)圖像算法計(jì)算每張圖片的特征值,采用按照?qǐng)D片的拍攝時(shí)間點(diǎn)的先后順序依次將每張圖片的特征值與最后一張圖片的特征值進(jìn)行比較的方式,找出應(yīng)用啟動(dòng)完成的時(shí)間點(diǎn),進(jìn)而確定出應(yīng)用的啟動(dòng)速度,真實(shí)的反應(yīng)出應(yīng)用的啟動(dòng)速度,提升了結(jié)果的準(zhǔn)確性,提高了效率。
第四實(shí)施例
本實(shí)施例提供了一種應(yīng)用啟動(dòng)速度的測(cè)試方法,參見(jiàn)圖5,圖5為本實(shí)施例提供的應(yīng)用啟動(dòng)速度的測(cè)試方法的流程圖,該方法包括以下步驟:
S501:使用高速攝像機(jī)拍攝電話本啟動(dòng)過(guò)程的視頻;
S502:將視頻按120FPS拆分成圖片,并記錄每張圖片的拍攝時(shí)間點(diǎn);
S503:選取最后一張圖片,使用預(yù)設(shè)圖像算法計(jì)算出最后一張圖片的特征值,記為FP_lastpic,FP_lastpic為64位的一個(gè)字符串,即FP_lastpic=3fcfb30c8730c8330c033fcff;
S504:使用預(yù)設(shè)圖像算法計(jì)算每一張圖片的特征值;
S505:按照?qǐng)D片的拍攝時(shí)間點(diǎn)的先后順序依次將每張圖片的特征值與最后一張圖片的特征值進(jìn)行比較,即與FP_lastpic比較;
S506:將第一次出現(xiàn)與最后一張圖片的特征值的相似度大于第一預(yù)設(shè)閾值的圖片作為目標(biāo)圖片,目標(biāo)圖片的拍攝時(shí)間點(diǎn)記為T(mén)_aim;
S507:使用T_aim減去應(yīng)用啟動(dòng)時(shí)的拍攝時(shí)間點(diǎn)即為電話本的啟動(dòng)速度。
通過(guò)本實(shí)施例的實(shí)施,在進(jìn)行應(yīng)用啟動(dòng)速度的測(cè)試時(shí),通過(guò)預(yù)設(shè)圖像算法計(jì)算每張圖片的特征值,采用按照?qǐng)D片的拍攝時(shí)間點(diǎn)的先后順序依次將每張圖片的特征值與最后一張圖片的特征值進(jìn)行比較的方式,找出應(yīng)用啟動(dòng)完成的時(shí)間點(diǎn),進(jìn)而確定出應(yīng)用的啟動(dòng)速度,真實(shí)的反應(yīng)出應(yīng)用的啟動(dòng)速度,提升了結(jié)果的準(zhǔn)確性,提高了效率。
需要說(shuō)明的是,在本文中,術(shù)語(yǔ)“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過(guò)程、方法、物品或者裝置不僅包括那些要素,而且還包括沒(méi)有明確列出的其他要素,或者是還包括為這種過(guò)程、方法、物品或者裝置所固有的要素。在沒(méi)有更多限制的情況下,由語(yǔ)句“包括一個(gè)……”限定的要素,并不排除在包括該要素的過(guò)程、方法、物品或者裝置中還存在另外的相同要素。
上述本發(fā)明實(shí)施例序號(hào)僅僅為了描述,不代表實(shí)施例的優(yōu)劣。
通過(guò)以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到上述實(shí)施例方法可借助軟件加必需的通用硬件平臺(tái)的方式來(lái)實(shí)現(xiàn),當(dāng)然也可以通過(guò)硬件,但很多情況下前者是更佳的實(shí)施方式?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說(shuō)對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來(lái),該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)(如ROM/RAM、磁碟、光盤(pán))中,包括若干指令用以使得一臺(tái)終端設(shè)備(可以是手機(jī),計(jì)算機(jī),服務(wù)器,空調(diào)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例的方法。
以上僅為本發(fā)明的優(yōu)選實(shí)施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說(shuō)明書(shū)及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運(yùn)用在其他相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專利保護(hù)范圍內(nèi)。