本發(fā)明屬于視頻檢索技術(shù)領(lǐng)域,更具體地,涉及一種融合多模態(tài)特征的網(wǎng)球視頻事件檢測(cè)方法。
背景技術(shù):
視頻語(yǔ)義分析一直是多媒體研究領(lǐng)域的熱點(diǎn)問(wèn)題。體育比賽視頻作為一類(lèi)重要的視頻資源,因其規(guī)則固定、種類(lèi)眾多、關(guān)注度高、商業(yè)價(jià)值大等眾多因素而得到研究人員的廣泛關(guān)注?;ヂ?lián)網(wǎng)技術(shù)迅速發(fā)展,網(wǎng)絡(luò)上的視頻資源呈現(xiàn)爆炸式的增長(zhǎng),而隨著生活節(jié)奏的加快,人們希望能在閑暇時(shí)快速定位自己感興趣的體育視頻內(nèi)容,視頻語(yǔ)義分析與事件自動(dòng)檢測(cè)就是解決這一問(wèn)題的關(guān)鍵。
跟足球和籃球等老牌體育運(yùn)動(dòng)的受歡迎程度相比,網(wǎng)球運(yùn)動(dòng)的關(guān)注者相對(duì)較少。但是,隨著大眾體育的發(fā)展以及國(guó)際網(wǎng)球運(yùn)動(dòng)的影響,近些年,網(wǎng)球在我國(guó)發(fā)展迅速,越來(lái)越多的人開(kāi)始關(guān)注網(wǎng)球比賽,每年的四大滿(mǎn)貫比賽、各種大師賽,吸引了很多球迷的眼球。一場(chǎng)完整的國(guó)際網(wǎng)球比賽,少則一個(gè)多小時(shí),多則三四個(gè)小時(shí),人們由于緊張的生活而無(wú)暇完整地觀看一整場(chǎng)比賽,并且關(guān)注點(diǎn)不同,不同的觀眾可能只想觀看自己感興趣的部分,比如有人喜歡看ace球,有人喜歡多拍,有人熱衷于搶七局等。此外,一些專(zhuān)業(yè)運(yùn)動(dòng)員或者教練員,可能只關(guān)注有技術(shù)含量的對(duì)攻,希望能通過(guò)研究其他運(yùn)動(dòng)員的比賽策略,來(lái)幫助自己提高水平或者制定比賽方案。為了滿(mǎn)足這些迫切的需求,網(wǎng)球視頻語(yǔ)義事件的自動(dòng)檢測(cè)就成為近些年多媒體領(lǐng)域研究人員越來(lái)越關(guān)注的問(wèn)題。
目前已經(jīng)有很多的專(zhuān)家學(xué)者展開(kāi)了對(duì)網(wǎng)球視頻事件檢測(cè)工作的研究,也提出了許多的思路和方法。從最初視覺(jué)單一模態(tài)的特征分析方法,到融合音頻、文本多模態(tài)特征的視頻分析方法;從結(jié)合領(lǐng)域特征的檢測(cè)方法,到利用通用模型的檢測(cè)方法,網(wǎng)球視頻事件檢測(cè)技術(shù)得到了極大的發(fā)展。但是,目前仍然缺乏一種比較系統(tǒng)的網(wǎng)球視頻事件檢測(cè)方法。
技術(shù)實(shí)現(xiàn)要素:
針對(duì)現(xiàn)有技術(shù)的以上缺陷或改進(jìn)需求,本發(fā)明的目的在于提供了一種融合多模態(tài)特征的網(wǎng)球視頻事件檢測(cè)方法,由此解決目前的網(wǎng)球視頻事件檢測(cè)技術(shù)不能系統(tǒng)有效的對(duì)網(wǎng)絡(luò)視頻事件進(jìn)行檢測(cè)的技術(shù)問(wèn)題。
為實(shí)現(xiàn)上述目的,按照本發(fā)明的一個(gè)方面,提供了一種融合多模態(tài)特征的網(wǎng)球視頻事件檢測(cè)方法,包括:
(1)獲取網(wǎng)球視頻中的比分牌位置信息,由比分牌位置信息得到比分牌中球員名字的位置信息以及比分?jǐn)?shù)字的位置信息,由球員名字的位置信息以及比分?jǐn)?shù)字的位置信息確定發(fā)球指示符的位置信息;
(2)由發(fā)球指示符的位置信息、球員名字的位置信息以及比分?jǐn)?shù)字的位置信息對(duì)包含比分牌的樣本幀圖像進(jìn)行識(shí)別確定球員名稱(chēng)、比分序列以及發(fā)球指示符所對(duì)應(yīng)的球員;
(3)將網(wǎng)球視頻進(jìn)行分段得到候選段,利用候選段結(jié)合svd降維特征向量進(jìn)行鏡頭邊界檢測(cè);
(4)使用主色率和邊緣像素率對(duì)包含比分牌的圖像幀序列進(jìn)行鏡頭類(lèi)型劃分,其中,鏡頭類(lèi)型包括play鏡頭和break鏡頭;
(5)從不含比分牌的圖像幀序列中根據(jù)漸變序列檢測(cè)回放鏡頭;
(6)根據(jù)網(wǎng)球比賽視頻編輯特點(diǎn),對(duì)網(wǎng)球視頻劃分事件段;
(7)融合發(fā)球指示符信息、球員名稱(chēng)、比分序列、鏡頭邊界檢測(cè)結(jié)果、鏡頭分類(lèi)結(jié)果、回放鏡頭檢測(cè)結(jié)果以及網(wǎng)球比賽的領(lǐng)域知識(shí)本信息對(duì)事件段進(jìn)行事件檢測(cè),確定事件類(lèi)型。
優(yōu)選地,所述將網(wǎng)球視頻進(jìn)行分段得到候選段,包括以下步驟:
(a1)以m幀為間隔將網(wǎng)球視頻分為l((m-1)n,(m-1)(n+1))(n≥0)段,計(jì)算每段首尾幀的hsv顏色直方圖差作為段距d((m-1)n,(m-1)(n+1)),將段距表示為d(m-1)(n);
(a2)以n段為一組,將所有段分組,計(jì)算每一組的閾值tl,每一個(gè)d(m-1)(n)與其所在組的閾值進(jìn)行比較,若d(m-1)(n)>tl,則該段為候選段,若當(dāng)前段與前后段滿(mǎn)足(d(m-1)(n)>3d(m-1)(n-1)∪d(m-1)(n)>3d(m-1)(n+1))∩d(m-1)(n)>0.8μg,則將當(dāng)前段作為候選段,得到所有的候選段集合s1,其中,μg為預(yù)設(shè)值;
(a3)對(duì)s1中的每一個(gè)候選段進(jìn)行二分,同時(shí)計(jì)算二分后的前后半段的段距,分別為
若
(a4)對(duì)s2中的所有候選段進(jìn)行二分,并執(zhí)行步驟(a3),得到長(zhǎng)度為
優(yōu)選地,步驟(4)具體包括以下子步驟:
(4.1)計(jì)算關(guān)鍵幀的邊緣像素率edgepixelrate,取關(guān)鍵幀中的興趣區(qū)域,計(jì)算該興趣區(qū)域的主色率maincolorrate;
(4.2)在鏡頭內(nèi)以預(yù)設(shè)幀為間隔取關(guān)鍵幀,計(jì)算各關(guān)鍵幀興趣區(qū)域的主色率,進(jìn)而得到鏡頭的平均主色率avgmaincolorrate,得到鏡頭的三維特征向量f(i)={edgepixelrate,maincolorrate,avgmaincolorrate};
(4.3)通過(guò)自適應(yīng)閾值threshold_play確定網(wǎng)球視頻中play鏡頭的平均主色率所在范圍,進(jìn)而區(qū)分play與break鏡頭。
優(yōu)選地,步驟(4.3)具體包括以下子步驟:
(4.3.1)將前l(fā)個(gè)關(guān)鍵幀的主色率按從小到大排序;
(4.3.2)去掉最大的三個(gè)主色率,計(jì)算剩下主色率的平均值,作為閾值threshold_play;
(4.3.3)若edgepixelrate<ε1∪edgepixelrate>ε2,則鏡頭為break鏡頭;
(4.3.4)若edgepixelrate∈(ε1,ε2),若滿(mǎn)足(maincolorrate>0.8×threshold_play)∩(avgmaincolorrate-miancolorrate>第七預(yù)設(shè)值),則鏡頭為play鏡頭;若滿(mǎn)足maincolorrate>0.9×threshold_play∩avgmaincolorrate>第八預(yù)設(shè)值,則鏡頭為play鏡頭;若滿(mǎn)足maincolorrate>threshold_play∩avgmaincolorrate>threshold_play,則鏡頭為play鏡頭;若滿(mǎn)足maincolorrate>第九預(yù)設(shè)值,則鏡頭為play鏡頭;
(4.3.4)將剩余鏡頭作為break鏡頭。
優(yōu)選地,步驟(5)具體包括以下子步驟:
(5.1)取一段不含比分牌序列,若該序列長(zhǎng)度超過(guò)length,則取下一段,否則執(zhí)行步驟(5.2);
(5.2)將該段分成前后兩部分,分別為fseg和bseg;
(5.3)以預(yù)設(shè)數(shù)量的幀為滑動(dòng)窗口從fseg取幀,構(gòu)建特征向量;
(5.4)使用svd降維特征向量,按照余弦公式計(jì)算相鄰幀間相似度和首尾幀間相似度g,得到該段的平均相似度avgsimilarity;
(5.5)若g≤第十預(yù)設(shè)值∪(g>第十一預(yù)設(shè)值∩g<第十二預(yù)設(shè)值∩avgsimilarity<第十三預(yù)設(shè)值),則該段是漸變序列,記錄漸變開(kāi)始,執(zhí)行步驟(5.6),如果fseg沒(méi)有滿(mǎn)足以上公式的序列,則執(zhí)行步驟(5.7);
(5.6)跳轉(zhuǎn)執(zhí)行步驟(5.3)按倒序處理后半段bseg;
(5.7)在漸變序列集合中檢查在fseg中是否存在漸變結(jié)果,如果存在,則記錄漸變開(kāi)始,執(zhí)行步驟(5.6),否則該不含比分牌序列不存在回放鏡頭,執(zhí)行步驟(5.1)。
優(yōu)選地,步驟(6)具體包括以下子步驟:
(6.1)根據(jù)回放將包含比分的鏡頭序列分割成段,每一段的最后一個(gè)鏡頭為回放鏡頭;
(6.2)在每一段中,逆向掃描,找到第一個(gè)play鏡頭的位置,檢測(cè)該第一個(gè)play鏡頭位置的前一個(gè)鏡頭,如果前一個(gè)鏡頭是特寫(xiě)鏡頭或者中鏡頭,則將從該第一個(gè)play鏡頭位置的后一個(gè)位置到該第一個(gè)play鏡頭的前一個(gè)位置作為一個(gè)候選事件段,同時(shí)記錄該第一個(gè)play鏡頭的比分信息;
(6.3)順序掃描步驟(6.2)中得到的所有候選事件段,將相鄰的比分相同的候選事件段合并成一個(gè)完整的事件段,最終得到以分為單位的事件段。
總體而言,通過(guò)本發(fā)明所構(gòu)思的以上技術(shù)方案與現(xiàn)有技術(shù)相比,能夠取得下列有益效果:
(1)使用候選段選擇結(jié)合svd降維特征向量,極大降低了邊界檢測(cè)的時(shí)間復(fù)雜度;
(2)從不含比分牌序列中檢測(cè)回放鏡頭,考慮網(wǎng)球比賽不含比分牌序列中只有回放鏡頭的開(kāi)始和結(jié)束是漸變序列,通過(guò)匹配漸變序列,完成回放鏡頭檢測(cè);
(3)結(jié)合網(wǎng)球領(lǐng)域知識(shí)進(jìn)行視頻結(jié)構(gòu)劃分,完成事件邊界檢測(cè);
(4)融合文本信息、視覺(jué)特征和領(lǐng)域知識(shí),完成網(wǎng)球視頻事件檢測(cè)。
附圖說(shuō)明
圖1是本發(fā)明實(shí)施例公開(kāi)的一種融合多模態(tài)特征的網(wǎng)球視頻事件檢測(cè)方法的流程示意圖;
圖2為本發(fā)明實(shí)施例公開(kāi)的一種break鏡頭分類(lèi)流程示意圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅用以解釋本發(fā)明,并不用于限定本發(fā)明。此外,下面所描述的本發(fā)明各個(gè)實(shí)施方式中所涉及到的技術(shù)特征只要彼此之間未構(gòu)成沖突就可以相互組合。
本發(fā)明公開(kāi)了一種融合多模態(tài)特征的網(wǎng)球視頻事件檢測(cè)方法。針對(duì)網(wǎng)球事件特點(diǎn),結(jié)合比分信息和視覺(jué)特征,并融合領(lǐng)域知識(shí)進(jìn)行視頻事件檢測(cè)。該方法可以檢測(cè)出網(wǎng)球視頻中的多種事件類(lèi)型,有效滿(mǎn)足不同興趣用戶(hù)的需求,減少用戶(hù)瀏覽時(shí)間。
如圖1所示是本發(fā)明實(shí)施例公開(kāi)的一種融合多模態(tài)特征的網(wǎng)球視頻事件檢測(cè)方法的流程示意圖;在圖1所示的方法中,主要包括三個(gè)階段:文本信息檢測(cè),包括比分牌定位、比分牌字段分割、比分牌信息識(shí)別;視覺(jué)特征檢測(cè),包括鏡頭分割與分類(lèi)、回放鏡頭檢測(cè);事件檢測(cè),包括視頻結(jié)構(gòu)劃分、領(lǐng)域知識(shí)分析、融合信息進(jìn)行事件檢測(cè)。具體包括如下步驟:
(1)文本信息檢測(cè):獲取網(wǎng)球視頻中的比分牌位置信息,由比分牌位置信息得到比分牌中球員名字的位置信息以及比分?jǐn)?shù)字的位置信息,由球員名字的位置信息以及比分?jǐn)?shù)字的位置信息確定發(fā)球指示符的位置信息;由發(fā)球指示符的位置信息、球員名字的位置信息以及比分?jǐn)?shù)字的位置信息對(duì)包含比分牌的樣本幀圖像進(jìn)行識(shí)別確定球員名稱(chēng)、比分序列以及發(fā)球指示符所對(duì)應(yīng)的球員;
具體地,文本信息檢測(cè)實(shí)現(xiàn)方法為:
文本信息主要是比分牌信息。網(wǎng)球視頻中的比分牌信息,不僅詳細(xì)反映了當(dāng)前比賽進(jìn)程相關(guān)信息,包括當(dāng)前比賽球員名,當(dāng)前發(fā)球球員指示符以及當(dāng)前的比分情況,并且該比分牌有一個(gè)顯著的特點(diǎn)就是其位置不會(huì)改變。比分牌信息檢測(cè)包含以下步驟:
(1-1)比分牌定位
比分牌定位分為大致定位和精確定位兩步。比分牌大致定位的具體方法是根據(jù)切變檢測(cè)結(jié)果,將視頻分成鏡頭(切變檢測(cè)方法見(jiàn)(2-1)),取每個(gè)鏡頭內(nèi)的第5幀作為候選幀。以6為間隔取候選幀作累積像素差處理,并通過(guò)形態(tài)學(xué)處理降噪,對(duì)得到的圖像進(jìn)行輪廓檢測(cè),根據(jù)比分牌大小及位置特征,選取比分牌候選位置。每段視頻取20個(gè)比分牌大致位置作為比分牌位置候選集。比分牌的精確位置是通過(guò)兩次圖像匹配得到,具體方法是使用surf特征點(diǎn)檢測(cè)算法來(lái)檢測(cè)圖像的特征點(diǎn),根據(jù)bruteforce進(jìn)行匹配,計(jì)算平均匹配距離distance,如果distance<ρ,則表示兩圖能匹配,如果一個(gè)候選比分牌能夠匹配兩個(gè)及以上的比分牌,則該比分牌加入第一次圖像匹配的結(jié)果集。第二次匹配同樣使用的是surf檢測(cè)特征點(diǎn),bruteforce進(jìn)行匹配,計(jì)算得到平均匹配距離,比較所有的平均匹配距離,平均距離最小的候選比分牌就作為準(zhǔn)確的比分牌,記錄比分牌位置。
(1-2)比分牌字段分割
網(wǎng)球比賽視頻中的比分牌主要由三部分組成:發(fā)球指示符、球員名字、當(dāng)前比分。球員的名字是固定不變的,而發(fā)球指示符會(huì)在上下球員交替變換,球員的比分也會(huì)隨著比賽進(jìn)行而發(fā)生改變。
球員名與比分?jǐn)?shù)字分割過(guò)程如下:
步驟1.對(duì)比分牌模板進(jìn)行形態(tài)學(xué)處理,得到去噪的二值圖像;
步驟2.根據(jù)上下名字中間的全黑或者全白區(qū)域進(jìn)行比分牌上下區(qū)域切割。比分牌的寬度為w,高度為h,記x1等于0.2×w,x2等于0.5×w,y1等于0.2×h,y2等于0.8×h。初始化一個(gè)長(zhǎng)度為y2-y1的整型向量v,統(tǒng)計(jì)比分牌y1到y(tǒng)2區(qū)間每一行的像素點(diǎn)(起點(diǎn)為x1,終點(diǎn)為x2),如果該行是全0或者全1像素,則在v中對(duì)應(yīng)位置的元素為0,否則為1。找到v中一段連續(xù)的0序列,且長(zhǎng)度超過(guò)3,該0序列的開(kāi)始對(duì)應(yīng)的比分牌上的行即為上比分的下邊界boardup_e,該0序列的結(jié)束對(duì)應(yīng)著下比分的上邊界boarddown_s。
步驟3.以步驟2中同樣的方法確定上比分的上邊界和下比分的下邊界。確定上比分的上邊界時(shí),x1和x2的取值不變,y1取為0,y2為上比分的下邊界boardup_e,確定下比分的下邊界時(shí),x1和x2的取值不變,y1為下比分的上邊界boarddown_s,y2為h。得到上比分的上邊界boardup_s和下比分的下邊界boarddown_e,記上下比分牌的高度分別為h_up和h_down。
步驟4.名字區(qū)域和比分區(qū)域之間有一定的間隔,利用這個(gè)間隔將上下比分牌都分割為名字區(qū)域和比分區(qū)域。x1取為0.2×w,x2為0.8×w,y1為0.1×h_up,y2為h_up,初始化一個(gè)長(zhǎng)度為x1的整型向量v1,統(tǒng)計(jì)上比分牌從x1到x2每一列的像素點(diǎn)(起點(diǎn)為y1,終點(diǎn)為y2),如果該列是全0或者全1像素,則在中對(duì)應(yīng)位置的元素為0,否則為1。找到v1中的一段連續(xù)的0序列,且長(zhǎng)度超過(guò)5,該序列的開(kāi)始即為上名字的右邊界nameup_r,該序列的結(jié)束即為上比分的左邊界scoreup_l。
步驟5.以步驟4中相同的方法將下比分牌分割成名字區(qū)域和比分區(qū)域,確定下比分牌名字和比分時(shí)x1和x2取值不變,y1取為0.1×h_down,y2為h_down,得到下名字的右邊界namedown_r和下比分的左邊界scoredown_l。
步驟6.為了準(zhǔn)確識(shí)別球員名字,需要確定名字區(qū)域的左邊界,具體的方法同步驟4,確定上球員名字的左邊界時(shí)x1取0,x2取nameup_r,y1取0,y2取上比分牌的高度,確定下球員名字的左邊界時(shí)x1取0,x2取namedown_l,y1取0,y2取下比分牌的高度。
步驟7.分割盤(pán)分、局分和小分,兩個(gè)分?jǐn)?shù)之間會(huì)有一定的間隔,同時(shí)為了觀眾能夠更清晰地區(qū)分不同的分?jǐn)?shù),比分牌中相鄰的比分位置的背景色不同。根據(jù)這兩個(gè)特點(diǎn)可以分割出每一類(lèi)分?jǐn)?shù)的位置。方法同步驟4,x1取0,x2取為上比分的寬度,y1取為0,y2取為0.8×h_down,得到向量v2,當(dāng)v2中兩個(gè)相鄰的1元素之間有少于10個(gè)0元素時(shí),將0元素更新為1元素。最后統(tǒng)計(jì)v2中連續(xù)的1元素即為每一個(gè)比分的位置,使用同樣的方法處理下比分。
經(jīng)過(guò)以上步驟,得到了比分牌中球員名字和各自比分的具體位置。
(1-3)發(fā)球指示符檢測(cè)
網(wǎng)球比賽中發(fā)球指示符的形狀各異,通常位于比分牌中名字的左側(cè)或者名字與比分的中間。(1-2)中確定了名字和比分的準(zhǔn)確位置,那么名字的左邊區(qū)域和名字與比分中間的區(qū)域就作為發(fā)球指示符候選位置。具體過(guò)程如下:
步驟1.以5為間隔取play鏡頭的關(guān)鍵幀;
步驟2.計(jì)算累積像素差并進(jìn)行中值濾波,得到diffimg;
步驟3.統(tǒng)計(jì)diffimg中4個(gè)候選發(fā)球指示符區(qū)域中的黑白像素的個(gè)數(shù),計(jì)算白色像素點(diǎn)所占的比例,比例大的為發(fā)球指示符位置。
(1-4)文字識(shí)別
對(duì)于某個(gè)包含比分牌的樣本幀,首先進(jìn)行二值化,根據(jù)已經(jīng)得到的比分牌中各字段的位置分割出發(fā)球指示符、名字和比分的子圖像。檢測(cè)兩個(gè)發(fā)球指示符子圖中,前景色所占的比例,比例大的則存在發(fā)球指示符,其所對(duì)應(yīng)的球員擁有發(fā)球權(quán)。訓(xùn)練svm分類(lèi)器,對(duì)每一個(gè)比分?jǐn)?shù)字進(jìn)行識(shí)別。使用google公司開(kāi)發(fā)的ocr引擎tesseract對(duì)名字進(jìn)行識(shí)別。
球員名字的識(shí)別可能存在誤差,為了提高名字識(shí)別的準(zhǔn)確性,在確定球員名字時(shí)使用了球員名字模糊匹配的算法。首先,從wta國(guó)際女子網(wǎng)球協(xié)會(huì)和atp男子職業(yè)網(wǎng)球官網(wǎng)上獲取了比較完整的球員名列表。不同的比賽中球員名的表示方式不同,需要對(duì)球員名進(jìn)行擴(kuò)展,比如“rogerfederer”,則擴(kuò)展為“rogerfederer”、“roger”、“federer”、“roger-federer”、“r.federer”。最后將名字統(tǒng)一轉(zhuǎn)換成大寫(xiě)字符存儲(chǔ),即為namelist。每一條信息中的球員名與namelist中進(jìn)行匹配,得到匹配的名字,統(tǒng)計(jì)整個(gè)鏡頭中該球員匹配最多的名字,則這個(gè)名字就是該球員的準(zhǔn)確名字。因?yàn)榍騿T名字在整個(gè)視頻中不變,所以只需要檢測(cè)前20個(gè)鏡頭,以得到準(zhǔn)確的球員名字,候選鏡頭則不再使用ocr識(shí)別球員名字。
(1-5)完整的比分序列檢測(cè)
針對(duì)包含比分牌的鏡頭,以20為間隔取樣本幀,得到該樣本幀的比分信息,檢測(cè)所有的樣本幀,得到該視頻完整的比分信息。接著整合信息,去掉重復(fù)的比分,每一個(gè)鏡頭只取一條準(zhǔn)確的比分信息。確定發(fā)球權(quán)和比分信息的具體方法為,取同一個(gè)鏡頭的比分信息,若當(dāng)前幀檢測(cè)出球員1具有發(fā)球權(quán),則當(dāng)前發(fā)球指示標(biāo)志為1,否則為2,統(tǒng)計(jì)當(dāng)前鏡頭內(nèi)樣本幀檢測(cè)出的發(fā)球指示標(biāo)志的個(gè)數(shù),如果1占多數(shù),則球員1具有發(fā)球權(quán),否則球員2具有發(fā)球權(quán)。確定該鏡頭比分牌中某一位置的準(zhǔn)確比分?jǐn)?shù)字的方法為,統(tǒng)計(jì)該組比分信息中某一位置的比分,占個(gè)數(shù)最多的那個(gè)數(shù)字就是該位置的準(zhǔn)確比分。
通過(guò)以上識(shí)別過(guò)程,對(duì)于某個(gè)包含比分牌的鏡頭,可以檢測(cè)出當(dāng)前鏡頭的比分和發(fā)球權(quán)。最終的比分序列中偶爾會(huì)出現(xiàn)錯(cuò)誤,需要進(jìn)一步對(duì)比分進(jìn)行修正,比分修正規(guī)則如下:
1.在局內(nèi),兩位球員的盤(pán)分和局分不變,小分只有一個(gè)人的會(huì)增加;
2.如果當(dāng)前局分是6:6(搶七局),則小分出現(xiàn)的數(shù)字只能是0~9,其他局分時(shí),小分只能是0、15、30、40、ad、ad或a;
3.小分都變?yōu)?時(shí),必有一個(gè)球員的局分增加1,另一位球員局分不變。
經(jīng)過(guò)以上比分修正,最終得到完整的比分序列。
(2)鏡頭邊界檢測(cè):將網(wǎng)球視頻進(jìn)行分段得到候選段,利用候選段結(jié)合svd降維特征向量進(jìn)行鏡頭邊界檢測(cè);
其中,將網(wǎng)球視頻進(jìn)行分段得到候選段,包括以下步驟:
(a1)以m幀為間隔將網(wǎng)球視頻分為l((m-1)n,(m-1)(n+1))(n≥0)段,計(jì)算每段首尾幀的hsv顏色直方圖差作為段距d((m-1)n,(m-1)(n+1)),將段距表示為d(m-1)(n);
(a2)以n段為一組,將所有段分組,計(jì)算每一組的閾值tl,每一個(gè)d(m-1)(n)與其所在組的閾值進(jìn)行比較,若d(m-1)(n)>tl,則該段為候選段,若當(dāng)前段與前后段滿(mǎn)足(d(m-1)(n)>3d(m-1)(n-1)∪d(m-1)(n)>3d(m-1)(n+1))∩d(m-1)(n)>0.8μg,則將當(dāng)前段作為候選段,得到所有的候選段集合s1,其中,μg為預(yù)設(shè)值;
(a3)對(duì)s1中的每一個(gè)候選段進(jìn)行二分,同時(shí)計(jì)算二分后的前后半段的段距,分別為
(a4)對(duì)s2中的所有候選段進(jìn)行二分,并執(zhí)行步驟(a3),得到長(zhǎng)度為
其中,第一預(yù)設(shè)值、第二預(yù)設(shè)值、第三預(yù)設(shè)值、第四預(yù)設(shè)值、第五預(yù)設(shè)值、第六預(yù)設(shè)值可以由經(jīng)驗(yàn)進(jìn)行確定。
以m為33,n為10為例詳細(xì)說(shuō)明候選段的選擇:
步驟1.以33幀為間隔將視頻分段為l(32n,32(n+1))(n≥0),計(jì)算每一段首尾幀的hsv顏色直方圖差作為段距d(32n,32(n+1)),表示為d32(n);
步驟2.以10段為一組,將所有段分組,計(jì)算每一組的閾值tl;
步驟3.每一個(gè)d32(n)與其所在的組閾值進(jìn)行比較,若d32(n)>tl,則為候選段,若當(dāng)前段與前后段滿(mǎn)足(d32(n)>3d32(n-1)∪d32(n)>3d32(n+1))∩d32(n)>0.8μg,也作為候選段,得到所有的候選段記為s1;
步驟4.對(duì)s1中的每一個(gè)候選段進(jìn)行二分,同時(shí)計(jì)算前后半段的段距,分別為
1)如果
2)如果
3)如果
4)剩下的段中則可能存在漸變序列。
通過(guò)以上比較得到候選段集合s2。
步驟5.對(duì)s2中的所有候選段再一次進(jìn)行二分,重復(fù)步驟4操作,最終得到長(zhǎng)度為9的段作為切變候選段,記為s_ct,長(zhǎng)度超過(guò)9的段都作為漸變候選段,記為s_gt。
svd降維特征向量:
對(duì)于任意m×n維矩陣a,必定存在分解
diag(σ1…σr)是a的特征值由大到小排列構(gòu)成的對(duì)角陣,特征值越大,在a中對(duì)應(yīng)的特征向量越重要,svd降維就是取前k個(gè)最大的特征值,使得滿(mǎn)足公式(2),將a從m×n降維成m×k維矩陣a′,uk表示m維列向量,vk表示n維列向量。
切變檢測(cè):
每一幀圖像構(gòu)造局部hsv顏色直方圖,h分量取18,s分量取12,v分量取8,得到1728維特征向量,通過(guò)svd降維成6維向量,針對(duì)段長(zhǎng)為9的切變候選段,構(gòu)成9×6的特征矩陣。如果該段存在切變,那么切變前后屬于不同的鏡頭,鏡頭間差別比較大,首尾幀間相似度值應(yīng)該不會(huì)太大,當(dāng)首尾幀間相似度值太大,說(shuō)明該候選段中間不存在切變。具體檢測(cè)方法如下:
步驟1.計(jì)算首尾幀間相似度,自適應(yīng)閾值t=p+(1-p)g;
步驟2.如果g大于閾值threshold_ct(實(shí)驗(yàn)中取0.95),則表明該段候選段中不存在切變,進(jìn)行下一個(gè)候選段的處理,否則轉(zhuǎn)至步驟3;
步驟3.計(jì)算所有的相鄰幀間相似度值s={s0,s1…sn},找到值最小的位置m,相似度值為value,并且統(tǒng)計(jì)相似度值大于0.9的個(gè)數(shù)count;
步驟4.如果滿(mǎn)足以下條件,則表明該候選段的m處存在切變,否則轉(zhuǎn)至步驟5;
sm-1>0.8∩sm+1>0.8∩(sm-1-value>0.1)∩(sm+1-value>0.1)∩count≥3∩value<t
步驟5.可能存在漸變,將該候選段存入s_gt中進(jìn)行后續(xù)漸變檢測(cè)。
漸變檢測(cè):
步驟1.計(jì)算首尾幀間相似度g。
步驟2.如果g大于閾值threshold_gt(實(shí)驗(yàn)中取0.9),則表明不存在漸變,處理下一個(gè)候選段,否則轉(zhuǎn)至步驟3。
步驟3.計(jì)算所有的相鄰幀間相似度值s={s0,s1…sn},找到值最小的位置m,相似度值為value。
步驟4.如果value>0.9,則判斷該候選段不含邊界,否則轉(zhuǎn)至步驟5。
步驟5.如果value<0.6,則判定該候選段可能存在漏檢的切變,如果m處于該候選段的左邊界,就將該候選段往左平移5幀,如果處于右邊界,就將該候選段往右平移5幀,重新進(jìn)行切變檢測(cè)。否則,轉(zhuǎn)至步驟6。
步驟6.正向遍歷s,找到第一個(gè)值小于閾值t(實(shí)驗(yàn)中取0.98)的位置作為新的開(kāi)始位置,逆序遍歷s,找到第一個(gè)值小于t的位置作為新的結(jié)束位置。
步驟7.如果新的段長(zhǎng)大于4,則該段就是漸變序列,記錄新的開(kāi)始和結(jié)束位置,否則,考慮可能是漏檢的切變,將該段前后各增加3幀后進(jìn)行切變檢測(cè)。
(3)鏡頭分類(lèi):使用主色率和邊緣像素率對(duì)包含比分牌的圖像幀序列進(jìn)行鏡頭類(lèi)型劃分,其中,鏡頭類(lèi)型包括play鏡頭和break鏡頭;
具體地,鏡頭分類(lèi)的實(shí)現(xiàn)方法為:
通過(guò)模板匹配將所有幀序列分成包含比分牌序列和不含比分牌序列。將包含比分牌序列分割成鏡頭,根據(jù)是否包含全球場(chǎng)將鏡頭分類(lèi)為play鏡頭和break鏡頭。將break鏡頭分類(lèi)為球員特寫(xiě)鏡頭、球員中鏡頭和場(chǎng)外鏡頭。play鏡頭與break鏡頭分類(lèi)過(guò)程如下:
步驟1.首先計(jì)算關(guān)鍵幀f(i)的邊緣像素率edgepixelrate,計(jì)算完成后取rect(0.1×width,2.0/7×height,0.8×width,4.0/7×height)為興趣區(qū)域,width表示關(guān)鍵幀的寬度,height表示關(guān)鍵幀的高度,計(jì)算該區(qū)域的主色率maincolorrate,同時(shí)在鏡頭內(nèi)以20幀為間隔取幀,計(jì)算興趣區(qū)域的主色率,進(jìn)而得到該鏡頭的平均主色率avgmaincolorrate,得到鏡頭shots(i)的三維特征向量f(i)={edgepixelrate,maincolorrate,avgmaincolorrate}。
步驟2.計(jì)算自適應(yīng)閾值threshold_play,以確定該視頻中play鏡頭的主色率所在范圍,用于準(zhǔn)確區(qū)分play與break鏡頭,具體計(jì)算方法如下:
步驟1.將前a×size(a取0.2)個(gè)關(guān)鍵幀的主色率按從小到大排序;
步驟2.取最后1/4個(gè)主色率,為避免干擾,去掉最大的三個(gè),計(jì)算剩下主色率的平均值,作為閾值threshold_play。
步驟3.根據(jù)以下規(guī)則來(lái)判斷鏡頭shots(i)屬于play鏡頭還是break鏡頭。
1)如果edgepixelrate<ε1∪edgepixelrate>ε2(ε1取0.025,ε2取0.1),則可以斷定該鏡頭為break鏡頭;
2)如果edgepixelrate∈(ε1,ε2),
若滿(mǎn)足(maincolorrate>0.8×threshold_play)∩(avgmaincolorrate-miancolorrate>第七預(yù)設(shè)值),則該鏡頭為play鏡頭;
若滿(mǎn)足maincolorrate>0.9×threshold_play∩avgmaincolorrate>第八預(yù)設(shè)值,則該鏡頭為play鏡頭;
若滿(mǎn)足maincolorrate>threshold_play∩avgmaincolorrate>threshold_play,則該鏡頭為play鏡頭;
若滿(mǎn)足maincolorrate>第九預(yù)設(shè)值,則該鏡頭為play鏡頭;
其他的則為break鏡頭。其中,第七預(yù)設(shè)值、第八預(yù)設(shè)值以及第九預(yù)設(shè)值可以根據(jù)經(jīng)驗(yàn)進(jìn)行確定。
break鏡頭分類(lèi)過(guò)程如圖2所示。
(4)回放鏡頭檢測(cè):從不含比分牌的圖像幀序列中根據(jù)漸變序列檢測(cè)回放鏡頭;
具體地,回放鏡頭檢測(cè)的實(shí)現(xiàn)方法為:
從不含比分牌序列中根據(jù)漸變序列檢測(cè)回放鏡頭,具體過(guò)程如下:
步驟1.取一段不含比分牌序列,若長(zhǎng)度超過(guò)length,則取下一段,否則執(zhí)行下一步(實(shí)驗(yàn)中l(wèi)ength取2000);
步驟2.將該段分成前后兩部分,分別為fseg和bseg;
步驟3.以預(yù)設(shè)數(shù)量的幀為滑動(dòng)窗口從fseg取幀,構(gòu)建30×1728維特征向量;優(yōu)選地,預(yù)設(shè)數(shù)量為30;
步驟4.使用svd降維特征向量,按照余弦公式計(jì)算相鄰幀間相似度和首尾幀間相似度g,得到該段的平均相似度avgsimilarity;
步驟5.若g≤第十預(yù)設(shè)值∪(g>第十一預(yù)設(shè)值∩g<第十二預(yù)設(shè)值∩avgsimilarity<第十三預(yù)設(shè)值),則該段是漸變序列,記錄漸變開(kāi)始,執(zhí)行步驟6,如果fseg沒(méi)有滿(mǎn)足以上公式的序列,則執(zhí)行步驟7;其中,第十預(yù)設(shè)值、第十一預(yù)設(shè)值、第十二預(yù)設(shè)值以及第十三預(yù)設(shè)值可以根據(jù)經(jīng)驗(yàn)進(jìn)行確定。
步驟6.轉(zhuǎn)至步驟3按倒序處理后半段bseg;
步驟7.在漸變序列集合中檢查在fseg中是否存在漸變結(jié)果,如果存在,則記錄漸變開(kāi)始,執(zhí)行步驟6,否則該不含比分牌序列不存在回放鏡頭,執(zhí)行步驟1。
(5)事件檢測(cè):根據(jù)網(wǎng)球比賽視頻編輯特點(diǎn),對(duì)網(wǎng)球視頻劃分事件段;
具體地,事件檢測(cè)的實(shí)現(xiàn)方式為:
根據(jù)網(wǎng)球視頻的編輯特點(diǎn),將視頻分成視頻段,每一個(gè)視頻段包含若干個(gè)連續(xù)的鏡頭,該視頻段表達(dá)了一個(gè)完整的事件。同時(shí),網(wǎng)球比賽中存在諸多啟發(fā)式規(guī)則,整合這些規(guī)則,結(jié)合視頻段中的比分變化情況進(jìn)行各種事件的檢測(cè)。
視頻結(jié)構(gòu)劃分:
在網(wǎng)球比賽中,事件只會(huì)存在包含play鏡頭的序列中,于是根據(jù)play鏡頭,可以將視頻分割成包含play鏡頭的事件段。根據(jù)網(wǎng)球視頻編輯特點(diǎn),發(fā)現(xiàn)在play鏡頭的前面通常是一個(gè)球員準(zhǔn)備發(fā)球的中鏡頭或特寫(xiě)鏡頭,而play鏡頭后面通常是一個(gè)擊球結(jié)束,球員離場(chǎng)的中鏡頭或特寫(xiě)鏡頭。網(wǎng)球比賽事件段的劃分方法如下。
步驟1.根據(jù)回放將包含比分的鏡頭序列分割成段,每一段的最后一個(gè)鏡頭就是回放鏡頭。
步驟2.在每一段中,逆向掃描,找到第一個(gè)play鏡頭的位置,檢測(cè)該位置前一個(gè)鏡頭,如果是特寫(xiě)鏡頭或者中鏡頭,那么從后到該play鏡頭的前一個(gè)位置就是一個(gè)候選事件段,同時(shí)記錄該play鏡頭的比分信息。
步驟3.順序掃描步驟2中得到的所有候選事件段,將相鄰的比分相同的候選事件段合并成一個(gè)完整的事件段。
最終得到以分為單位的事件段,記為eventclips。
(7)融合發(fā)球指示符信息、球員名稱(chēng)、比分序列、鏡頭邊界檢測(cè)結(jié)果、鏡頭分類(lèi)結(jié)果、回放鏡頭檢測(cè)結(jié)果以及網(wǎng)球比賽的領(lǐng)域知識(shí)本信息對(duì)事件段進(jìn)行事件檢測(cè),確定事件類(lèi)型。
具體地,領(lǐng)域知識(shí)分析方法為:
國(guó)際網(wǎng)球比賽分男子比賽和女子比賽,男子比賽分五盤(pán)三勝制和三盤(pán)兩勝制,而女子比賽全部都是三盤(pán)兩勝制。每一盤(pán)分為若干局,每一局有若干分。小分的記分規(guī)則為,前三分分別記為15、30、40,若雙方球員的比分為40:40,球員1再贏一分則為占先,記為ad(ad、a):40(空),若球員2再贏一分則記為40:40。按此規(guī)則,一局比賽中,任何一位球員都至少要比對(duì)手多贏兩分才能結(jié)束本局比賽。贏一局,則局分加1,先得6分,且至少比對(duì)手多兩分的選手贏得該盤(pán)比賽。當(dāng)局分為6:6時(shí),則進(jìn)行搶七局,該局小分記分規(guī)則不同于常規(guī)的記分規(guī)則,贏一分則小分加1,當(dāng)小分大于等于7時(shí),統(tǒng)一記為7,連勝兩分則勝本局。通常搶七局是一個(gè)精彩局,此時(shí)比賽到達(dá)焦灼的時(shí)刻,是觀眾非常期待的精彩事件。
網(wǎng)球比賽中,球員雙方輪流擁有發(fā)球權(quán),發(fā)球者往往具有優(yōu)勢(shì),比較容易贏得其發(fā)球局。若發(fā)球球員贏得其發(fā)球局,叫做“保發(fā)”,若每位球員都能保住其發(fā)球局,那么最終將進(jìn)行“搶七局”(tiebreak),即到達(dá)該盤(pán)比賽高潮。若某位球員失掉其發(fā)球局,使得對(duì)手贏一分,則稱(chēng)為“破發(fā)”(break),破發(fā)局對(duì)球員非常重要,因?yàn)閷⑹乖撈瓢l(fā)球員在比分上占據(jù)優(yōu)勢(shì),在棋逢對(duì)手時(shí)更能保證最終的勝利。根據(jù)前后兩局發(fā)球權(quán)變化以及局分變化,很容易判斷該局是否是破發(fā)局,以及破發(fā)的位置。
每一次比賽開(kāi)始,發(fā)球球員都具有兩次發(fā)球權(quán),若第一次出現(xiàn)失誤(不過(guò)網(wǎng)或界外球),則接著進(jìn)行第二次發(fā)球,若兩次都出現(xiàn)失誤,則稱(chēng)發(fā)球員產(chǎn)生“雙誤”(doublefault),此時(shí)接發(fā)球員直接得分。發(fā)球員在一發(fā)時(shí)發(fā)出一個(gè)優(yōu)質(zhì)球,使得對(duì)手碰不到該球而直接得分,此球稱(chēng)為“ace球”,是一個(gè)相當(dāng)精彩的發(fā)球,直接象征球員的高水平。當(dāng)雙方球員比分呈現(xiàn)40:40時(shí),則稱(chēng)之為“平分”(deuce),任何一位球員需再連贏兩分才能贏得該局比賽。當(dāng)雙方球員的小分為ad(ad、a):40(空)時(shí),則稱(chēng)球員1“占先”(advantage),此球員再贏得一分即可贏得本局比賽,占先一定發(fā)生在平分后面。在一次擊球過(guò)程中,通常規(guī)定連續(xù)擊球超過(guò)9個(gè)回合稱(chēng)為“多拍”,多拍是對(duì)球員體力以及耐力的極大考驗(yàn),通常也是觀眾比較關(guān)注的事件。
整合以上得到的文本信息、視覺(jué)信息和領(lǐng)域知識(shí)進(jìn)行事件檢測(cè),將網(wǎng)球比賽視頻事件分為10類(lèi)。各類(lèi)事件檢測(cè)方法如下:
(1)局事件和搶七局事件
局內(nèi)有若干分,每一個(gè)比分的局比分和盤(pán)比分都相同,根據(jù)局比分的變化可以獲取局事件。順序掃描事件段集合eventclips,若相鄰的事件段的局分相同,則為同一局內(nèi),若相鄰的局分不同,以該位置為分界,前面的事件段為一局,后面的事件段屬于下一局,繼續(xù)掃描,最終得到所有的局事件。某一局的局比分為6:6,則該局為搶七局。
(2)平分事件和占先事件
順序掃描集合eventclips,當(dāng)前事件段的下標(biāo)為i,下一個(gè)事件段的下標(biāo)為i+1。若當(dāng)前事件段eventclips[i]的小分為30:40(不分球員次序),而eventclips[i+1]的小分為40:40,則事件段eventclips[i]就是平分事件。若eventclips[i]的小分為40:40,eventclips[i+1]的小分為ad(ad、a):40(空)(不分球員次序),那么事件段eventclips[i]即為占先事件。
(3)破發(fā)點(diǎn)事件和破發(fā)事件
順序掃描eventclips,若球員1(player1)和球員2(player2)的小分為0:40、15:40、30:40、40(空):ad(ad、a),并且player1擁有發(fā)球權(quán),那么該事件段為player2的一個(gè)破發(fā)點(diǎn)。相反,若player1和player2的小分為40:0、40:15、40:30、ad(ad、a):40(空),且player2具有發(fā)球權(quán),則該事件段為player1的一個(gè)破發(fā)點(diǎn)。
當(dāng)前事件段eventclips[i]的發(fā)球球員是player1,下一個(gè)事件段eventclips[i+1]的發(fā)球權(quán)為player2,并且eventclips[i+1]中player2的局比分增加1,player1的局比分不變,則該事件段為player2破player1的發(fā)球局。
(4)局點(diǎn)事件
局點(diǎn)事件表示某位球員再贏一分就將結(jié)束該局的事件,與破發(fā)點(diǎn)和破發(fā)相似,但是不同之處在于,局點(diǎn)不用關(guān)注發(fā)球權(quán),只關(guān)注球員的小分即可,若player1和player2的比分為0:40、15:40、30:40、40(空):ad(ad、a)(不分球員順序),則該事件段為局點(diǎn)事件。
(5)多拍事件
在男子網(wǎng)球比賽中經(jīng)常會(huì)出現(xiàn)多拍,多拍是對(duì)體力的極大考驗(yàn),尤其是超過(guò)40個(gè)回合的多拍。對(duì)于觀眾來(lái)說(shuō),多拍是一個(gè)值得欣賞的精彩事件。多拍事件以play鏡頭持續(xù)時(shí)間長(zhǎng)短來(lái)判定,通常,超過(guò)9個(gè)來(lái)回的對(duì)攻就認(rèn)為是多拍。網(wǎng)球比賽中,一個(gè)來(lái)回的時(shí)間為2秒至3秒,本系統(tǒng)中將對(duì)攻時(shí)間超過(guò)25秒的事件段判定為多拍事件。
(6)雙誤事件
發(fā)球員連續(xù)兩次發(fā)球都失敗,導(dǎo)致對(duì)方球員得分的事件即為雙誤。一個(gè)事件段如果發(fā)生雙誤,通常會(huì)包含兩個(gè)play鏡頭,并且每一個(gè)play鏡頭持續(xù)的時(shí)間都非常短,該比分結(jié)束后,對(duì)方球員的小分增加。順序檢測(cè)eventclips[i]中的事件段,若eventclips[i]中至少有兩個(gè)play鏡頭(考慮可能存在break鏡頭誤檢成play鏡頭),且每一個(gè)play鏡頭持續(xù)時(shí)間不超過(guò)4秒,并且eventclips[i]中接發(fā)球員的小分增加,則當(dāng)前事件段發(fā)生雙誤事件。
(7)ace球事件
ace球是一個(gè)發(fā)球直接得分的優(yōu)質(zhì)球,發(fā)生該事件的play鏡頭持續(xù)時(shí)間非常短,檢測(cè)時(shí)根據(jù)當(dāng)前事件段中play鏡頭持續(xù)時(shí)間短,下一個(gè)事件段中顯示當(dāng)前發(fā)球球員的小分增加來(lái)判斷。本系統(tǒng)中以play鏡頭持續(xù)時(shí)間不超過(guò)4秒為判斷標(biāo)準(zhǔn)。
本領(lǐng)域的技術(shù)人員容易理解,以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。