亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種卡頓識別方法、裝置及計(jì)算設(shè)備的制造方法

文檔序號:10553377閱讀:401來源:國知局
一種卡頓識別方法、裝置及計(jì)算設(shè)備的制造方法
【專利摘要】本發(fā)明公開了一種卡頓識別方法、裝置及計(jì)算設(shè)備,其中卡頓識別方法適于在計(jì)算設(shè)備中執(zhí)行,該方法包括以下步驟:根據(jù)預(yù)設(shè)的錄屏?xí)r長對移動終端的測試過程進(jìn)行錄屏;將錄屏獲得的視頻文件導(dǎo)出至計(jì)算設(shè)備;按照預(yù)設(shè)的時(shí)間間隔,對所述視頻文件進(jìn)行取幀處理形成圖片;分析相鄰的兩張圖片的相似度;如果所述相似度均大于相似度閾值,則判斷出現(xiàn)卡頓,執(zhí)行卡頓處理。
【專利說明】
一種卡頓識別方法、裝置及計(jì)算設(shè)備
技術(shù)領(lǐng)域
[0001] 本發(fā)明涉及移動終端領(lǐng)域,特別涉及一種卡頓識別方法、裝置及計(jì)算設(shè)備。
【背景技術(shù)】
[0002] 隨著移動互聯(lián)網(wǎng)技術(shù)和移動終端技術(shù)的蓬勃發(fā)展,智能手機(jī)、平板電腦等移動終 端得到廣泛使用,其功能更加豐富,支持的應(yīng)用也更為多樣化。用戶對移動終端的性能要求 也隨之越來越高,特別是運(yùn)行流暢度方面,已成為用戶衡量性能是否具有優(yōu)越性的一項(xiàng)重 要指標(biāo)。
[0003] 然而,眾多的應(yīng)用在使用時(shí)占據(jù)了較多的系統(tǒng)資源,導(dǎo)致移動終端易出現(xiàn)卡頓現(xiàn) 象。目前,識別移動終端卡頓的技術(shù)方案多分為三類。一類是測試人員進(jìn)行手動操作,人為 判斷是否存在卡頓,但該方法不僅難以避免人工誤差,主觀性太強(qiáng),還耗費(fèi)時(shí)間和人力資 源。另一類是使用高速相機(jī)等硬件設(shè)備或工具來捕抓移動終端的當(dāng)前頁面,并對捕抓到的 多個(gè)頁面進(jìn)行分析對比來判斷,但該方法中測試效率較低,且花銷較高,過于昂貴。還有一 類是通過移動終端的系統(tǒng)中的FPS值來衡量判斷,雖較易實(shí)現(xiàn),但系統(tǒng)本身的數(shù)據(jù)可靠性尚 不足以信賴。

【發(fā)明內(nèi)容】

[0004] 為此,本發(fā)明提供一種卡頓識別的方案,以力圖解決或者至少緩解上面存在的問 題。
[0005] 根據(jù)本發(fā)明的一個(gè)方面,提供一種卡頓識別的方法,適于在計(jì)算設(shè)備中執(zhí)行,計(jì)算 設(shè)備適于與作為被測試設(shè)備的移動終端連接并對移動終端在測試過程中的卡頓進(jìn)行識別, 該方法包括如下步驟。首先,根據(jù)預(yù)設(shè)的錄屏?xí)r長對移動終端的測試過程進(jìn)行錄屏;將錄屏 獲得的視頻文件導(dǎo)出至計(jì)算設(shè)備;按照預(yù)設(shè)的時(shí)間間隔,對視頻文件進(jìn)行取幀處理形成圖 片;分析相鄰的兩張圖片的相似度;如果相似度均大于相似度閾值,則判斷出現(xiàn)卡頓,執(zhí)行 卡頓處理。
[0006] 可選地,在根據(jù)本發(fā)明的卡頓識別方法中,按照預(yù)設(shè)的時(shí)間間隔,對視頻文件進(jìn)行 取幀處理形成圖片包括:獲取待取幀處理的視頻文件的幀數(shù),幀數(shù)為錄屏?xí)r長內(nèi)的視頻文 件所包含的圖像數(shù)量;根據(jù)幀數(shù)、錄屏?xí)r長和時(shí)間間隔計(jì)算出對視頻文件取幀的取幀間隔; 按照取幀間隔對視頻文件包含的各幀圖像進(jìn)行取幀處理;將取幀處理后選出的各幀圖像保 存為圖片。
[0007] 可選地,在根據(jù)本發(fā)明的卡頓識別方法中,按照取幀間隔對視頻文件包含的各幀 圖像進(jìn)行取幀處理包括:獲取視頻文件包含的各幀圖像;對各幀圖像按錄屏的時(shí)間順序進(jìn) 行按序編號;選出上述編號能被取幀間隔整除的圖像;對選出的各幀圖像按錄屏的時(shí)間順 序重新按序編號。
[0008] 可選地,在根據(jù)本發(fā)明的卡頓識別方法中,分析相鄰的兩張圖片的相似度包括:將 相鄰的兩張圖片轉(zhuǎn)化成預(yù)設(shè)尺寸的圖片;將轉(zhuǎn)化后的圖片劃分成大小相等的多個(gè)圖片塊; 計(jì)算上述兩張圖片對應(yīng)位置上的圖片塊的直方圖;根據(jù)直方圖計(jì)算相鄰的兩張圖片的相似 度。
[0009] 可選地,在根據(jù)本發(fā)明的卡頓識別方法中,相似度閾值為95%~100%。
[0010] 可選地,在根據(jù)本發(fā)明的卡頓識別方法中,相似度閾值為99%。
[0011] 可選地,在根據(jù)本發(fā)明的卡頓識別方法中,執(zhí)行卡頓處理包括保存相似度分析數(shù) 據(jù)和系統(tǒng)日志。
[0012] 可選地,在根據(jù)本發(fā)明的卡頓識別方法中,如果相似度未均大于相似度閾值,則判 斷未出現(xiàn)卡頓,并從計(jì)算設(shè)備中刪除視頻文件。
[0013] 可選地,在根據(jù)本發(fā)明的卡頓識別方法中,根據(jù)預(yù)設(shè)的錄屏?xí)r長對移動終端的測 試過程進(jìn)行錄屏之前,包括執(zhí)行自動化測試腳本開始測試。
[0014] 根據(jù)本發(fā)明的又一個(gè)方面,提供一種卡頓識別裝置,適于駐留在計(jì)算設(shè)備中,計(jì)算 設(shè)備適于與作為被測試設(shè)備的移動終端連接并對移動終端在測試過程中的卡頓進(jìn)行識別。 該裝置包括錄屏模塊、導(dǎo)出模塊、取幀模塊、分析模塊和卡頓處理模塊。其中,錄屏模塊,適 于根據(jù)預(yù)設(shè)的錄屏?xí)r長對移動終端的測試過程進(jìn)行錄屏;導(dǎo)出模塊,適于將錄屏獲得的視 頻文件導(dǎo)出至計(jì)算設(shè)備;取幀模塊,適于按照預(yù)設(shè)的時(shí)間間隔,對視頻文件進(jìn)行取幀處理形 成圖片;分析模塊,適于分析相鄰的兩張圖片的相似度;卡頓處理模塊,適于當(dāng)相似度均大 于相似度閾值時(shí),判斷出現(xiàn)卡頓,執(zhí)行卡頓處理。
[0015] 可選地,在根據(jù)本發(fā)明的卡頓識別裝置中,取幀模塊包括:獲取單元,適于獲取待 取幀處理的視頻文件的幀數(shù),幀數(shù)為錄屏?xí)r長內(nèi)的視頻文件所包含的圖像數(shù)量;第一計(jì)算 單元,適于根據(jù)幀數(shù)、錄屏?xí)r長和時(shí)間間隔計(jì)算出對視頻文件取幀的取幀間隔;取幀處理單 元,適于按照取幀間隔對視頻文件包含的各幀圖像進(jìn)行取幀處理;保存單元,適于將取幀處 理后選出的各幀圖像保存為圖片。
[0016] 可選地,在根據(jù)本發(fā)明的卡頓識別裝置中,取幀處理單元進(jìn)一步適于:獲取視頻文 件包含的各幀圖像;對各幀圖像按錄屏的時(shí)間順序進(jìn)行按序編號;選出上述編號能被取幀 間隔整除的圖像;對選出的各幀圖像按錄屏的時(shí)間順序重新按序編號。
[0017] 可選地,在根據(jù)本發(fā)明的卡頓識別裝置中,分析模塊包括:轉(zhuǎn)化單元,適于將相鄰 的兩張圖片轉(zhuǎn)化成規(guī)格一致的圖片;劃分單元,適于將轉(zhuǎn)化后的圖片劃分成大小相等的多 個(gè)圖片塊;第二計(jì)算單元,適于計(jì)算上述兩張圖片對應(yīng)位置上的圖片塊的直方圖;第三計(jì)算 單元,適于根據(jù)直方圖計(jì)算相鄰的兩張圖片的相似度。
[0018]可選地,在根據(jù)本發(fā)明的卡頓識別裝置中,相似度閾值為95%~100%。
[0019]可選地,在根據(jù)本發(fā)明的卡頓識別裝置中,相似度閾值為99%。
[0020] 可選地,在根據(jù)本發(fā)明的卡頓識別裝置中,卡頓處理模塊進(jìn)一步適于保存相似度 分析數(shù)據(jù)和系統(tǒng)日志。
[0021] 可選地,在根據(jù)本發(fā)明的卡頓識別裝置中,包括刪除模塊,適于當(dāng)相似度未均大于 相似度閾值時(shí),判斷未出現(xiàn)卡頓,并從計(jì)算設(shè)備中刪除視頻文件。
[0022] 可選地,在根據(jù)本發(fā)明的卡頓識別裝置中,包括腳本執(zhí)行模塊,適于執(zhí)行自動化測 試腳本開始測試。
[0023] 根據(jù)本發(fā)明的又一個(gè)方面,還提供一種計(jì)算設(shè)備,包括根據(jù)本發(fā)明的卡頓識別裝 置。
[0024] 根據(jù)本發(fā)明的卡頓識別的技術(shù)方案,首先對移動終端的測試過程進(jìn)行錄屏,并將 獲得的視頻文件導(dǎo)出至計(jì)算設(shè)備,按照預(yù)設(shè)的時(shí)間間隔對視頻文件進(jìn)行取幀處理形成圖 片,分析相鄰兩張圖片的相似度,若相似度均大于相似度閾值,則判斷出現(xiàn)卡頓并執(zhí)行卡頓 處理。上述技術(shù)方案中,對測試過程進(jìn)行錄屏,進(jìn)而對視頻文件取幀獲得的圖片進(jìn)行相似度 分析來識別卡頓,一方面可以在測試過程中保持了現(xiàn)場錄屏數(shù)據(jù),另一方面也實(shí)現(xiàn)了移動 終端卡頓識別的量化處理,極大地提高了測試效率。而且一旦出現(xiàn)卡頓現(xiàn)象,通過執(zhí)行卡頓 處理來保存分析數(shù)據(jù)和系統(tǒng)日志,便于輔助后續(xù)的研發(fā)工作,還避免了人力和設(shè)備的浪費(fèi)。
【附圖說明】
[0025] 為了實(shí)現(xiàn)上述以及相關(guān)目的,本文結(jié)合下面的描述和附圖來描述某些說明性方 面,這些方面指示了可以實(shí)踐本文所公開的原理的各種方式,并且所有方面及其等效方面 旨在落入所要求保護(hù)的主題的范圍內(nèi)。通過結(jié)合附圖閱讀下面的詳細(xì)描述,本公開的上述 以及其它目的、特征和優(yōu)勢將變得更加明顯。遍及本公開,相同的附圖標(biāo)記通常指代相同的 部件或元素。
[0026] 圖1示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的計(jì)算設(shè)備100的示意圖;
[0027] 圖2示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的卡頓識別方法200的流程圖;以及 [0028]圖3示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的卡頓識別裝置300的示意圖。
【具體實(shí)施方式】
[0029] 下面將參照附圖更詳細(xì)地描述本公開的示例性實(shí)施例。雖然附圖中顯示了本公開 的示例性實(shí)施例,然而應(yīng)當(dāng)理解,可以以各種形式實(shí)現(xiàn)本公開而不應(yīng)被這里闡述的實(shí)施例 所限制。相反,提供這些實(shí)施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍 完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。
[0030] 圖1是示例計(jì)算設(shè)備100的框圖。在基本的配置102中,計(jì)算設(shè)備100典型地包括系 統(tǒng)存儲器106和一個(gè)或者多個(gè)處理器104。存儲器總線108可以用于在處理器104和系統(tǒng)存儲 器106之間的通信。
[0031] 取決于期望的配置,處理器104可以是任何類型的處理,包括但不限于:微處理器 ((此)、微控制器(yc)、數(shù)字信息處理器(DSP)或者它們的任何組合。處理器104可以包括諸 如一級高速緩存110和二級高速緩存112之類的一個(gè)或者多個(gè)級別的高速緩存、處理器核心 114和寄存器116。示例的處理器核心114可以包括運(yùn)算邏輯單元(ALU)、浮點(diǎn)數(shù)單元(FPU)、 數(shù)字信號處理核心(DSP核心)或者它們的任何組合。示例的存儲器控制器118可以與處理器 104-起使用,或者在一些實(shí)現(xiàn)中,存儲器控制器118可以是處理器104的一個(gè)內(nèi)部部分。
[0032] 取決于期望的配置,系統(tǒng)存儲器106可以是任意類型的存儲器,包括但不限于:易 失性存儲器(諸如RAM)、非易失性存儲器(諸如R0M、閃存等)或者它們的任何組合。系統(tǒng)存儲 器106可以包括操作系統(tǒng)120、一個(gè)或者多個(gè)應(yīng)用122以及程序數(shù)據(jù)124。在一些實(shí)施方式中, 應(yīng)用122可以布置為在操作系統(tǒng)上利用程序數(shù)據(jù)124進(jìn)行操作。
[0033] 計(jì)算設(shè)備100還可以包括有助于從各種接口設(shè)備(例如,輸出設(shè)備142、外設(shè)接口 144和通信設(shè)備146)到基本配置102經(jīng)由總線/接口控制器130的通信的接口總線140。示例 的輸出設(shè)備142包括圖形處理單元148和音頻處理單元150。它們可以被配置為有助于經(jīng)由 一個(gè)或者多個(gè)A/V端口 152與諸如顯示器或者揚(yáng)聲器之類的各種外部設(shè)備進(jìn)行通信。示例外 設(shè)接口 144可以包括串行接口控制器154和并行接口控制器156,它們可以被配置為有助于 經(jīng)由一個(gè)或者多個(gè)I/O端口 158和諸如輸入設(shè)備(例如,鍵盤、鼠標(biāo)、筆、語音輸入設(shè)備、觸摸 輸入設(shè)備)或者其他外設(shè)(例如打印機(jī)、掃描儀等)之類的外部設(shè)備進(jìn)行通信。示例的通信設(shè) 備146可以包括網(wǎng)絡(luò)控制器160,其可以被布置為便于經(jīng)由一個(gè)或者多個(gè)通信端口 164與一 個(gè)或者多個(gè)其他計(jì)算設(shè)備162通過網(wǎng)絡(luò)通信鏈路的通信。
[0034] 網(wǎng)絡(luò)通信鏈路可以是通信介質(zhì)的一個(gè)示例。通信介質(zhì)通??梢泽w現(xiàn)為在諸如載波 或者其他傳輸機(jī)制之類的調(diào)制數(shù)據(jù)信號中的計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊,并且可 以包括任何信息遞送介質(zhì)。"調(diào)制數(shù)據(jù)信號"可以這樣的信號,它的數(shù)據(jù)集中的一個(gè)或者多 個(gè)或者它的改變可以在信號中編碼信息的方式進(jìn)行。作為非限制性的示例,通信介質(zhì)可以 包括諸如有線網(wǎng)絡(luò)或者專線網(wǎng)絡(luò)之類的有線介質(zhì),以及諸如聲音、射頻(RF)、微波、紅外 (IR)或者其它無線介質(zhì)在內(nèi)的各種無線介質(zhì)。這里使用的術(shù)語計(jì)算機(jī)可讀介質(zhì)可以包括存 儲介質(zhì)和通信介質(zhì)二者。
[0035] 計(jì)算設(shè)備100可以實(shí)現(xiàn)為小尺寸便攜(或者移動)電子設(shè)備的一部分,這些電子設(shè) 備可以是諸如蜂窩電話、個(gè)人數(shù)字助理(PDA)、個(gè)人媒體播放器設(shè)備、無線網(wǎng)絡(luò)瀏覽設(shè)備、個(gè) 人頭戴設(shè)備、應(yīng)用專用設(shè)備、或者可以包括上面任何功能的混合設(shè)備。計(jì)算設(shè)備1〇〇還可以 實(shí)現(xiàn)為包括桌面計(jì)算機(jī)和筆記本計(jì)算機(jī)配置的個(gè)人計(jì)算機(jī)。在一些實(shí)施例中,計(jì)算設(shè)備100 被配置為執(zhí)行根據(jù)本發(fā)明的卡頓識別方法。應(yīng)用122包括根據(jù)本發(fā)明的卡頓識別裝置300。 [0036]圖2示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的卡頓識別方法200的流程圖??D識別方法 200適于在計(jì)算設(shè)備(例如圖1所示的計(jì)算設(shè)備100)中執(zhí)行。
[0037]移動終端例如智能手機(jī)、平板電腦等,在出廠之前會對其運(yùn)行的流暢度進(jìn)行測試, 例如發(fā)送數(shù)條SMS或者M(jìn)MS以驗(yàn)證其收發(fā)成功率以及穩(wěn)定性、連續(xù)進(jìn)行多次呼叫、多次對文 件系統(tǒng)進(jìn)行添加或刪除操作、多任務(wù)多進(jìn)程情況下的沖突測試以及極限測試,通過計(jì)算設(shè) 備與被測試移動終端連接,進(jìn)行移動終端的卡頓識別。
[0038]目前,Android系統(tǒng)的應(yīng)用最為廣泛,基于Android系統(tǒng)開發(fā)的各類軟件也不勝枚 舉。以下以Android系統(tǒng)為例描述本發(fā)明的技術(shù)方案。首先,以Android系統(tǒng)為基礎(chǔ)對預(yù)先收 集產(chǎn)生卡頓現(xiàn)象的主要場景設(shè)計(jì)相應(yīng)的測試用例。其中,卡頓現(xiàn)象絕大多數(shù)出現(xiàn)在對文件、 CPU和內(nèi)存的頻繁碎片式的操作切換后,對界面或列表進(jìn)行滑動,或是對應(yīng)用進(jìn)行啟動和切 換等操作過程中。根據(jù)上述測試用例中的操作步驟和順序用腳本語言描述出來,生成自動 化測試腳本。通過在計(jì)算設(shè)備中運(yùn)行測試腳本,對與計(jì)算設(shè)備如PC端連接的移動終端的運(yùn) 行過程中的卡頓進(jìn)行識別。
[0039] 如圖2所示,方法200始于步驟S210。在步驟S210開始之前,執(zhí)行自動化測試腳本開 始測試。在步驟S210中,根據(jù)預(yù)設(shè)的錄屏?xí)r長對移動終端的測試過程進(jìn)行錄屏。在本實(shí)施例 中,錄屏?xí)r長預(yù)設(shè)為3秒,通過調(diào)用adb命令來對移動終端的測試過程進(jìn)行錄屏,該adb命令 可表不為adb shell screenrecord-time-limit 3/sdcard/demo.mp4,意思為對移動終端 錄屏3秒,錄制的視頻格式為MP4,視頻文件的名稱為demo,且保存在sd卡的根目錄下。同時(shí), 在錄屏完成后通過變量RecordedListl來記錄下錄制好的視頻文件的名稱demo。
[0040]隨后,在步驟S220中,將錄屏獲得的視頻文件導(dǎo)出至計(jì)算設(shè)備。在本實(shí)施例中,通 過調(diào)用adb命令來實(shí)現(xiàn)視頻的導(dǎo)出,該adb命令可表示為adb pul 1/sdcard/demo.mp4D: /,表 明名稱為demo的視頻文件已導(dǎo)出至計(jì)算設(shè)備中D盤的根目錄下。在視頻導(dǎo)出至計(jì)算設(shè)備后, 將視頻文件名稱demo存儲在RecordedList2中,并將存儲在RecordedListl中的視頻文件名 稱demo刪除,表明該視頻已成功導(dǎo)出。換言之,在視頻導(dǎo)出過程中會一直檢測 RecordedListl中是否有值,即是否有視頻文件的名稱記錄。如果有,則繼續(xù)導(dǎo)出視頻文件, 并將已導(dǎo)出的視頻文件的名稱存儲在RecordedList2中,而從RecordedListl中刪除;如果 沒有,則執(zhí)行等待處理,直至RecordedListl中再次出現(xiàn)新的視頻文件的名稱。
[0041]在步驟S230中,按照預(yù)設(shè)的時(shí)間間隔,對視頻文件進(jìn)行取幀處理形成圖片。在對視 頻文件進(jìn)行取幀處理前,檢測RecordedList2中是否存在視頻文件的名稱記錄。在本實(shí)施例 中,檢測到視頻文件的名稱為demo的記錄,貝lj通過Python中的OpenCV和PIL庫對導(dǎo)出的視頻 文件進(jìn)行取幀分析,并將存儲在RecordedList2中的視頻文件名稱demo刪除。實(shí)際上,該視 頻文件是通過連續(xù)播放錄屏獲得的多幀圖像而形成的動態(tài)播放過程。對視頻文件進(jìn)行取幀 處理,即是將視頻中的每一幀圖像按照預(yù)設(shè)的時(shí)間間隔取出,從而將其保存以形成待分析 的靜態(tài)的圖片。
[0042]首先,獲取待取幀處理的視頻文件幀數(shù),幀數(shù)為錄屏?xí)r長內(nèi)的視頻文件所包含的 圖像數(shù)量。幀數(shù)與錄屏的時(shí)長及幀率有關(guān),幀率是用于測量顯示幀數(shù)的量度,以每秒顯示幀 數(shù)(Frames per Second)來衡量。錄屏?xí)r的幀率即為移動終端的實(shí)時(shí)屏幕顯示幀率,在本實(shí) 施例中,幀率為60fps,則錄屏?xí)r長為3秒、幀率為60fps的視頻文件包含180幀圖像。預(yù)設(shè)的 時(shí)間間隔為50毫秒,根據(jù)幀數(shù)、錄屏?xí)r長和時(shí)間間隔計(jì)算出對視頻取幀的間隔,即取幀間隔 =幀數(shù)/(錄屏?xí)r長/時(shí)間間隔),將數(shù)值帶入得出取幀間隔為3,單位為幀,表明每3幀取其中 最后1幀圖像保存作為待分析的圖片。通過函數(shù)cv2. VideoCapture (videoPath)對視頻文件 取幀,其中videoPath表示視頻文件的存儲路徑。接下來,按照取幀間隔對視頻文件包含的 各幀圖像進(jìn)行取幀處理。先獲取視頻文件包含的各幀圖像,再對各幀圖像按錄屏的時(shí)間順 序進(jìn)行按序編號,即對獲取的180幀圖像按錄屏的時(shí)間順序進(jìn)行從1~180的按序編號。選出 上述編號能被取幀間隔整除的圖像,并對選出的各幀圖像按錄屏的時(shí)間順序重新按序編 號,則將編號為3、6、9、……、177、180的圖像選出后進(jìn)行時(shí)間上的重新排序,將其編號對應(yīng) 更新為1、2、3、……、59、60。最后,將上述編號為1~60的各幀圖片保存為圖片用于后期的相 似度分析。關(guān)鍵代碼如下所示: vcap = cv2.VideQ€apture(videQPath) similarity_list =[] pc = 1 e = 1 f= int(round(float(frameC(mnt)/(videoTime*10()0/ftime),())) while (vcap.isOpened〇):
[0043] ret, frame = vcap.read() if frame==None: break if(fb%f== 0): cv2.inivvril:e('iiTiage/' + str(pc) + 'JPG', frame) pc = pc + 1 fc = fc + 1
[0044] 在步驟S240中,分析相鄰的兩張圖片的相似度。在本實(shí)施例中,先對在步驟S230中 獲得的60張待分析的圖片按編號順序以圖片1、圖片2、……、圖片60表示,再依次對相鄰兩 張圖片的相似度進(jìn)行分析。首先,將相鄰的兩張圖片轉(zhuǎn)化為預(yù)設(shè)尺寸的圖片。其中,預(yù)設(shè)尺 寸為256X256像素,則先將圖片1和圖片2轉(zhuǎn)化成256X256像素的統(tǒng)一規(guī)格的圖片。其次,將 轉(zhuǎn)化后的圖片劃分成大小相等的多個(gè)圖片塊,即將轉(zhuǎn)化后的圖片1和圖片2劃分成4X4的16 個(gè)大小相等的圖片塊,各圖片塊的尺寸均為64X64像素,并按照從左至右、從上至下的順序 逐一編號,則圖片1中的16個(gè)圖片塊依次表示為圖片1-1、圖片1-2、……、圖片1-15、圖片1-16,圖片2中的16個(gè)圖片塊依次表示為圖片2-1、圖片2-2、……、圖片2-15、圖片2-16。隨后, 計(jì)算上述兩張圖片對應(yīng)位置上的圖片塊的直方圖,即調(diào)用PIL庫中的img.histogramO函數(shù) 分別計(jì)算圖片1-1和圖片2-1、圖片1-2和圖片2-2、……、圖片1-15和圖片2-15、圖片1-16和 圖片2-16的直方圖。最后,根據(jù)直方圖計(jì)算相鄰的兩張圖片的相似度,即根據(jù)圖片1-1和圖 片2-1的直方圖計(jì)算出圖片1-1和圖片2-1的相似度,根據(jù)圖片1-2和圖片2-2的直方圖計(jì)算 出圖片1-2和圖片2-2的相似度,以此類推,直至根據(jù)圖片1-16和圖片2-16的直方圖計(jì)算出 圖片1-16和圖片2-16的相似度,并將獲得的16個(gè)相似度的值取均值作為圖片1和圖片2的相 似度。此時(shí),圖片的相似度計(jì)算轉(zhuǎn)化成為直方圖的距離計(jì)算,在本實(shí)施例中依照如下公式進(jìn) 行直方圖相似度的定量度量:
[0046]式中,G,S為相鄰圖片的直方圖,gn為顏色空間G第n個(gè)樣點(diǎn)對應(yīng)的直方圖數(shù)據(jù),~為 顏色空間S第n個(gè)樣點(diǎn)對應(yīng)的直方圖數(shù)據(jù),N為顏色空間樣點(diǎn)數(shù),通常取值為768。這是因?yàn)閷?于PIL庫而言,其為RGB模式的圖片計(jì)算的直方圖樣點(diǎn)數(shù)為768,計(jì)算量并不算太大,因此可 不進(jìn)行降維處理而直接使用。獲得圖片1和圖片2的相似度后,繼續(xù)對后續(xù)圖片進(jìn)行處理,即 分別對圖片2和圖片3、圖片3和圖片4、……、圖片58和圖片59、圖片59和圖片60上述相鄰的 兩張圖片進(jìn)行相似度計(jì)算。關(guān)鍵代碼如下所示: def inake_regular_image(img, size=(256, 256)): return img.resize(size).convert('RGB')
[0047] def split_image(img, part_size=(64, 64)): w, h = img.size pw, ph = part-size return [img.crop((i, j, i + pw. j + ph)).copy() / for i in xrange(0, w, pw) / for j in xrange(0, h, ph)] def hist_similar(lh? rh): return sum( 1 - (0 if 1 == r else float(abs(! - r)) / max(i. r)) for 1, r in zip(lh, rh)) / len(!h)
[0048] def calc_iraage_similar(lf, rl): li, ri = make regular_ image(Iinage.open(!f)). make regular_image(Iinage. open(ff)) siinilarity==sum(hist_siinilar(!.histograin(), r.histogram()) for 1, r in zip (sp lit」mage(li), split-image(ri)))/i 6.0 return roundlsimilarity* 100,2)
[0049]在步驟S250中,如果相似度均大于相似度閾值,則判斷出現(xiàn)卡頓,執(zhí)行卡頓處理。 其中,卡頓處理包括保存相似度分析數(shù)據(jù)和系統(tǒng)日志。在本實(shí)施例中,由步驟S240計(jì)算得出 圖片1~60中相鄰兩張圖片的相似度在99.17%~99.68%的范圍內(nèi)波動,均大于預(yù)設(shè)的相 似度閾值99%,說明出現(xiàn)卡頓現(xiàn)象,執(zhí)行卡頓處理。而在本發(fā)明的又一實(shí)施例中,通過步驟 S240計(jì)算得出的圖片1~60中相鄰兩張圖片的相似度未均大于相似度閾值99%,則判斷未 出現(xiàn)卡頓,并從計(jì)算設(shè)備中將視頻文件demo刪除。
[0050]圖3示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的卡頓識別裝置300的示意圖。該裝置包括:錄 屏模塊310、導(dǎo)出模塊320、取幀模塊330、分析模塊340和卡頓處理模塊350。該裝置還包括刪 除模塊和腳本執(zhí)行模塊(圖中均未示出),刪除模塊位于卡頓處理模塊350之后,適于當(dāng)相似 度未均大于相似度閾值時(shí),判斷未出現(xiàn)卡頓,并從計(jì)算設(shè)備中刪除視頻文件。腳本執(zhí)行模塊 位于錄屏模塊310之前,適于執(zhí)行自動化測試腳本開始測試。
[0051] 錄屏模塊310適于根據(jù)預(yù)設(shè)的錄屏?xí)r長對移動終端的測試過程進(jìn)行錄屏。在本實(shí) 施例中,預(yù)設(shè)的錄屏?xí)r長為3秒,對測試過程錄屏后獲得的視頻文件名稱為demo。
[0052] 導(dǎo)出模塊320適于將錄屏獲得的視頻文件導(dǎo)出至計(jì)算設(shè)備。在本實(shí)施例中,通過 adb pull命令將視頻文件demo導(dǎo)出至計(jì)算設(shè)備中。
[0053]取幀模塊330適于按照預(yù)設(shè)的時(shí)間間隔,對視頻文件進(jìn)行取幀處理形成圖片。具體 地,取幀模塊330包括獲取單元331,適于獲取待取幀處理的視頻文件的幀數(shù),幀數(shù)為錄屏?xí)r 長內(nèi)的視頻文件所包含的圖像數(shù)量;第一計(jì)算單元332,適于根據(jù)幀數(shù)、錄屏?xí)r長和時(shí)間間 隔計(jì)算出對視頻文件取幀的取幀間隔;取幀處理單元333,適于按照取幀間隔對視頻文件包 含的各幀圖像進(jìn)行取幀處理;保存單元334,適于將取幀處理后選出的各幀圖像保存為圖 片。其中,取幀處理單元333進(jìn)一步適于獲取視頻文件包含的各幀圖像;對各幀圖像按錄屏 的時(shí)間順序進(jìn)行按序編號;選出上述編號能被取幀間隔整除的圖像;對選出的各幀圖像按 錄屏的時(shí)間順序重新按序編號。在本實(shí)施例中,預(yù)設(shè)的時(shí)間間隔為50毫秒,對視頻文件demo 進(jìn)行取幀處理后形成了圖片1~60共計(jì)60張圖片。
[0054]分析模塊340適于分析相鄰的兩張圖片的相似度。具體地,分析模塊340包括將相 鄰的兩張圖片轉(zhuǎn)化成規(guī)格一致的圖片的轉(zhuǎn)化單元341,將轉(zhuǎn)化后的圖片劃分成大小相等的 多個(gè)圖片塊的劃分單元342,計(jì)算上述兩張圖片對應(yīng)位置上的圖片塊的直方圖的第二計(jì)算 單元343以及根據(jù)直方圖計(jì)算相鄰的兩張圖片的相似度的第三計(jì)算單元344。
[0055] 卡頓處理模塊350適于當(dāng)相似度均大于相似度閾值時(shí),判斷出現(xiàn)卡頓,執(zhí)行卡頓處 理。其中,相似度閾值為95%~100%。相似度閾值還可以為99%??D處理模塊350進(jìn)一步 適于保存相似度分析數(shù)據(jù)和系統(tǒng)日志。在本實(shí)施例中,對圖片1~60中相鄰兩張圖片的相似 度計(jì)算得到的結(jié)果在99.17%~99.68%的范圍內(nèi)波動,均大于相似度閾值99%,說明出現(xiàn) 了卡頓,執(zhí)行卡頓處理。
[0056] 關(guān)于卡頓識別的具體步驟以及實(shí)施例,在基于圖2的描述中已經(jīng)詳細(xì)公開,此處不 再贅述。
[0057] 在現(xiàn)有的卡頓識別方法中,往往在測試后整理數(shù)據(jù)時(shí)才能體現(xiàn)結(jié)果,不便保留和 復(fù)現(xiàn)卡頓現(xiàn)象,還可能在識別卡頓時(shí)因人工誤差、設(shè)備和系統(tǒng)數(shù)據(jù)可靠性等降低測試結(jié)果 的準(zhǔn)確性和效率。根據(jù)本發(fā)明實(shí)施例的卡頓識別技術(shù)方案,首先對移動終端的測試過程進(jìn) 行錄屏,并將獲得的視頻文件導(dǎo)出至計(jì)算設(shè)備,按照預(yù)設(shè)的時(shí)間間隔對視頻文件進(jìn)行取幀 處理形成圖片,分析相鄰兩張圖片的相似度,若相似度均大于相似度閾值,則判斷出現(xiàn)卡頓 并執(zhí)行卡頓處理。上述技術(shù)方案中,對測試過程進(jìn)行錄屏,進(jìn)而對視頻文件取幀獲得的圖片 進(jìn)行相似度分析來識別卡頓,不僅在測試過程中保持了現(xiàn)場錄屏數(shù)據(jù),還實(shí)現(xiàn)了移動終端 卡頓識別的量化處理,提高了測試效率。而且一旦出現(xiàn)卡頓現(xiàn)象,通過執(zhí)行卡頓處理來保存 分析數(shù)據(jù)和系統(tǒng)日志,便于輔助后續(xù)程序的維護(hù)和修復(fù),節(jié)省了監(jiān)測儀器的資源投入,避免 人力資源的浪費(fèi)。
[0058] A9.如A1-4中任一項(xiàng)所述的方法,所述根據(jù)預(yù)設(shè)的錄屏?xí)r長對移動終端的測試過 程進(jìn)行錄屏之前,包括執(zhí)行自動化測試腳本開始測試。
[0059] B11.如B10所述的裝置,所述取幀模塊包括:
[0060]獲取單元,適于獲取待取幀處理的視頻文件的幀數(shù),所述幀數(shù)為錄屏?xí)r長內(nèi)的視 頻文件所包含的圖像數(shù)量;
[0061] 第一計(jì)算單元,適于根據(jù)幀數(shù)、錄屏?xí)r長和時(shí)間間隔計(jì)算出對視頻文件取幀的取 幀間隔;
[0062] 取幀處理單元,適于按照所述取幀間隔對視頻文件包含的各幀圖像進(jìn)行取幀處 理;
[0063] 保存單元,適于將取幀處理后選出的各幀圖像保存為圖片。
[0064] B12.如B11所述的裝置,所述取幀處理單元進(jìn)一步適于:
[0065] 獲取所述視頻文件包含的各幀圖像;
[0066] 對各幀圖像按錄屏的時(shí)間順序進(jìn)行按序編號;
[0067] 選出上述編號能被取幀間隔整除的圖像;
[0068] 對所述選出的各幀圖像按錄屏的時(shí)間順序重新按序編號。
[0069] B13.如B10所述的裝置,所述分析模塊包括:
[0070] 轉(zhuǎn)化單元,適于將相鄰的兩張圖片轉(zhuǎn)化成規(guī)格一致的圖片;
[0071] 劃分單元,適于將所述轉(zhuǎn)化后的圖片劃分成大小相等的多個(gè)圖片塊;
[0072] 第二計(jì)算單元,適于計(jì)算上述兩張圖片對應(yīng)位置上的圖片塊的直方圖;
[0073] 第三計(jì)算單元,適于根據(jù)所述直方圖計(jì)算相鄰的兩張圖片的相似度。
[0074] B14.如B10-13中任一項(xiàng)所述的裝置,其中所述相似度閾值為95%~100%。
[0075] B15.如B14所述的裝置,其中所述相似度閾值為99%。
[0076] B16.如B10-13中任一項(xiàng)所述的裝置,所述卡頓處理模塊進(jìn)一步適于保存相似度分 析數(shù)據(jù)和系統(tǒng)日志。
[0077] B17.如B10-13中任一項(xiàng)所述的裝置,包括刪除模塊,適于當(dāng)所述相似度未均大于 相似度閾值時(shí),判斷未出現(xiàn)卡頓,并從計(jì)算設(shè)備中刪除所述視頻文件。
[0078] B18.如B10-13中任一項(xiàng)所述的裝置,包括腳本執(zhí)行模塊,適于執(zhí)行自動化測試腳 本開始測試。
[0079] 在此處所提供的說明書中,說明了大量具體細(xì)節(jié)。然而,能夠理解,本發(fā)明的實(shí)施 例可以在沒有這些具體細(xì)節(jié)的情況下被實(shí)踐。在一些實(shí)例中,并未詳細(xì)示出公知的方法、結(jié) 構(gòu)和技術(shù),以便不模糊對本說明書的理解。
[0080] 類似地,應(yīng)當(dāng)理解,為了精簡本公開并幫助理解各個(gè)發(fā)明方面中的一個(gè)或多個(gè),在 上面對本發(fā)明的示例性實(shí)施例的描述中,本發(fā)明的各個(gè)特征有時(shí)被一起分組到單個(gè)實(shí)施 例、圖、或者對其的描述中。然而,并不應(yīng)將該公開的方法解釋成反映如下意圖:即所要求保 護(hù)的本發(fā)明要求比在每個(gè)權(quán)利要求中所明確記載的特征更多特征。更確切地說,如下面的 權(quán)利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個(gè)實(shí)施例的所有特征。因此,遵 循【具體實(shí)施方式】的權(quán)利要求書由此明確地并入該【具體實(shí)施方式】,其中每個(gè)權(quán)利要求本身都 作為本發(fā)明的單獨(dú)實(shí)施例。
[0081] 本領(lǐng)域那些技術(shù)人員應(yīng)當(dāng)理解在本文所公開的示例中的設(shè)備的模塊或單元或組 件可以布置在如該實(shí)施例中所描述的設(shè)備中,或者可替換地可以定位在與該示例中的設(shè)備 不同的一個(gè)或多個(gè)設(shè)備中。前述示例中的模塊可以組合為一個(gè)模塊或者此外可以分成多個(gè) 子模塊。
[0082]本領(lǐng)域那些技術(shù)人員可以理解,可以對實(shí)施例中的設(shè)備中的模塊進(jìn)行自適應(yīng)性地 改變并且把它們設(shè)置在與該實(shí)施例不同的一個(gè)或多個(gè)設(shè)備中??梢园褜?shí)施例中的模塊或單 元或組件組合成一個(gè)模塊或單元或組件,以及此外可以把它們分成多個(gè)子模塊或子單元或 子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何 組合對本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的所有特征以及如此公開的任 何方法或者設(shè)備的所有過程或單元進(jìn)行組合。除非另外明確陳述,本說明書(包括伴隨的權(quán) 利要求、摘要和附圖)中公開的每個(gè)特征可以由提供相同、等同或相似目的的替代特征來代 替。
[0083]此外,本領(lǐng)域的技術(shù)人員能夠理解,盡管在此所述的一些實(shí)施例包括其它實(shí)施例 中所包括的某些特征而不是其它特征,但是不同實(shí)施例的特征的組合意味著處于本發(fā)明的 范圍之內(nèi)并且形成不同的實(shí)施例。例如,在下面的權(quán)利要求書中,所要求保護(hù)的實(shí)施例的任 意之一都可以以任意的組合方式來使用。
[0084]此外,所述實(shí)施例中的一些在此被描述成可以由計(jì)算機(jī)系統(tǒng)的處理器或者由執(zhí)行 所述功能的其它裝置實(shí)施的方法或方法元素的組合。因此,具有用于實(shí)施所述方法或方法 元素的必要指令的處理器形成用于實(shí)施該方法或方法元素的裝置。此外,裝置實(shí)施例的在 此所述的元素是如下裝置的例子:該裝置用于實(shí)施由為了實(shí)施該發(fā)明的目的的元素所執(zhí)行 的功能。
[0085]如在此所使用的那樣,除非另行規(guī)定,使用序數(shù)詞"第一"、"第二"、"第三"等等來 描述普通對象僅僅表示涉及類似對象的不同實(shí)例,并且并不意圖暗示這樣被描述的對象必 須具有時(shí)間上、空間上、排序方面或者以任意其它方式的給定順序。
[0086]盡管根據(jù)有限數(shù)量的實(shí)施例描述了本發(fā)明,但是受益于上面的描述,本技術(shù)領(lǐng)域 內(nèi)的技術(shù)人員明白,在由此描述的本發(fā)明的范圍內(nèi),可以設(shè)想其它實(shí)施例。此外,應(yīng)當(dāng)注意, 本說明書中使用的語言主要是為了可讀性和教導(dǎo)的目的而選擇的,而不是為了解釋或者限 定本發(fā)明的主題而選擇的。因此,在不偏離所附權(quán)利要求書的范圍和精神的情況下,對于本 技術(shù)領(lǐng)域的普通技術(shù)人員來說許多修改和變更都是顯而易見的。對于本發(fā)明的范圍,對本 發(fā)明所做的公開是說明性的,而非限制性的,本發(fā)明的范圍由所附權(quán)利要求書限定。
【主權(quán)項(xiàng)】
1. 一種卡頓識別方法,適于在計(jì)算設(shè)備中執(zhí)行,所述方法包括: 根據(jù)預(yù)設(shè)的錄屏?xí)r長對移動終端的測試過程進(jìn)行錄屏; 將錄屏獲得的視頻文件導(dǎo)出至計(jì)算設(shè)備; 按照預(yù)設(shè)的時(shí)間間隔,對所述視頻文件進(jìn)行取幀處理形成圖片; 分析相鄰的兩張圖片的相似度; 如果所述相似度均大于相似度閾值,則判斷出現(xiàn)卡頓,執(zhí)行卡頓處理。2. 如權(quán)利要求1所述的方法,所述按照預(yù)設(shè)的時(shí)間間隔,對所述視頻文件進(jìn)行取幀處理 形成圖片包括: 獲取待取幀處理的視頻文件的幀數(shù),所述幀數(shù)為錄屏?xí)r長內(nèi)的視頻文件所包含的圖像 數(shù)量; 根據(jù)幀數(shù)、錄屏?xí)r長和時(shí)間間隔計(jì)算出對視頻文件取幀的取幀間隔; 按照所述取幀間隔對視頻文件包含的各幀圖像進(jìn)行取幀處理; 將取幀處理后選出的各幀圖像保存為圖片。3. 如權(quán)利要求2所述的方法,按照所述取幀間隔對視頻文件包含的各幀圖像進(jìn)行取幀 處理包括: 獲取所述視頻文件包含的各幀圖像; 對各幀圖像按錄屏的時(shí)間順序進(jìn)行按序編號; 選出上述編號能被取幀間隔整除的圖像; 對所述選出的各幀圖像按錄屏的時(shí)間順序重新按序編號。4. 如權(quán)利要求1所述的方法,所述分析相鄰的兩張圖片的相似度包括: 將相鄰的兩張圖片轉(zhuǎn)化成預(yù)設(shè)尺寸的圖片; 將所述轉(zhuǎn)化后的圖片劃分成大小相等的多個(gè)圖片塊; 計(jì)算上述兩張圖片對應(yīng)位置上的圖片塊的直方圖; 根據(jù)所述直方圖計(jì)算相鄰的兩張圖片的相似度。5. 如權(quán)利要求1-4中任一項(xiàng)所述的方法,其中所述相似度閾值為95 %~100 %。6. 如權(quán)利要求5所述的方法,其中所述相似度閾值為99 %。7. 如權(quán)利要求1-4中任一項(xiàng)所述的方法,其中所述執(zhí)行卡頓處理包括保存相似度分析 數(shù)據(jù)和系統(tǒng)日志。8. 如權(quán)利要求1-4中任一項(xiàng)所述的方法,還包括: 如果所述相似度未均大于相似度閾值,則判斷未出現(xiàn)卡頓,并從計(jì)算設(shè)備中刪除所述 視頻文件。9. 一種卡頓識別裝置,適于駐留在計(jì)算設(shè)備中,所述裝置包括: 錄屏模塊,適于根據(jù)預(yù)設(shè)的錄屏?xí)r長對移動終端的測試過程進(jìn)行錄屏; 導(dǎo)出模塊,適于將錄屏獲得的視頻文件導(dǎo)出至計(jì)算設(shè)備; 取幀模塊,適于按照預(yù)設(shè)的時(shí)間間隔,對所述視頻文件進(jìn)行取幀處理形成圖片; 分析模塊,適于分析相鄰的兩張圖片的相似度; 卡頓處理模塊,適于當(dāng)所述相似度均大于相似度閾值時(shí),判斷出現(xiàn)卡頓,執(zhí)行卡頓處 理。10. -種計(jì)算設(shè)備,包括如權(quán)利要求9所述的卡頓識別裝置。
【文檔編號】G06K9/62GK105913088SQ201610227030
【公開日】2016年8月31日
【申請日】2016年4月13日
【發(fā)明人】潘加旭
【申請人】廈門美圖移動科技有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1