欧美成人三级视频网站,国产一区国产二区国产三区,青青久久av北条麻妃黑人,亚州综合一区

即夢AI
當(dāng)前位置:首頁>AI資訊>微信里識別LOGO又快又準(zhǔn)?背后有OCR模塊一份功勞

微信里識別LOGO又快又準(zhǔn)?背后有OCR模塊一份功勞

文章來源:微信AI
導(dǎo)語
LOGO作為公司或品牌的代表性標(biāo)志,具有較強(qiáng)的識別和推廣作用。本文將介紹微信掃一掃及長按識圖中LOGO檢測及識別的相關(guān)技術(shù)

一、背景

掃一掃識物和長按識圖上線以來,可識別的類目已經(jīng)從商品擴(kuò)充到了包含植物、動物、地標(biāo)、菜品、汽車、名畫等的各個(gè)垂類。隨著用戶量的上升,對于LOGO檢測和識別的需求愈發(fā)強(qiáng)烈,LOGO作為品牌的標(biāo)識,可以讓用戶快速認(rèn)識和了解品牌,同時(shí)也能更快地接入商家的服務(wù),進(jìn)入到商家的公眾號及小程序。
微信里識別LOGO又快又準(zhǔn)?背后有OCR模塊一份功勞

二、難點(diǎn)分析

針對LOGO識別,最直接的解決思路就是檢測到query圖中的logo區(qū)域進(jìn)行分類,或者采用檢索的方式從gallery里面找到距離最近的圖片,同時(shí)需要限制這個(gè)距離剔除庫中不存在此LOGO的情況。但在實(shí)現(xiàn)過程中,我們發(fā)現(xiàn)LOGO識別主要存在以下難點(diǎn):

1、LOGO款式多,同一商家可能具有不同款LOGO,且不同款間類間差異小;

2、LOGO既有純文本的樣式,又有純圖案的樣式,還有藝術(shù)字樣式;

3、LOGO更新迭代快,商家可能不定時(shí)更換LOGO,要求模型的變通性強(qiáng)。

三、整體解決方案

針對以上難點(diǎn),我們在設(shè)計(jì)LOGO識別方案時(shí),為了更加靈活的迭代算法,采用了檢索的方式。同時(shí),由于視覺檢索模型對于文本的特征表達(dá)能力不足,為了兼顧了文本和圖案類型的LOGO,我們還引入了OCR模塊來進(jìn)行二次驗(yàn)證,最終得到了如下圖所示的整體解決方案。
微信里識別LOGO又快又準(zhǔn)?背后有OCR模塊一份功勞
如上圖所示,首先進(jìn)行LOGO檢測獲取目標(biāo)區(qū)域,再對目標(biāo)進(jìn)行檢索找到top1檢索距離小于一定閾值的結(jié)果作為預(yù)識別結(jié)果,根據(jù)預(yù)識別結(jié)果判斷是否為文本,如果為文本則進(jìn)行OCR識別后做二次驗(yàn)證,計(jì)算文本相似度,滿足一定閾值條件才輸出結(jié)果,如果不是文本則在直接輸出結(jié)果。

3.1 LOGO檢測

在進(jìn)行LOGO識別前,首先需要解決的問題是在圖像中檢測到LOGO,我們起初嘗試復(fù)用多源異構(gòu)數(shù)據(jù)的檢測器進(jìn)行LOGO分支的開發(fā),但實(shí)現(xiàn)中發(fā)現(xiàn)LOGO數(shù)據(jù)會與歷史遺留的大部分商品數(shù)據(jù)的存在重疊,異構(gòu)模式下兩個(gè)沖突的分支對主干backbone會產(chǎn)生影響,由于LOGO廣泛存在于商品中,且大部分LOGO為較小的目標(biāo)。
為了更好地檢測LOGO且不對主干商品和垂類檢測產(chǎn)生影響,我們構(gòu)造了一個(gè)獨(dú)立于商品檢測器的雙流retinanet LOGO檢測器。我們將數(shù)據(jù)分為兩類,一類是具有表觀一致性的LOGO數(shù)據(jù),另一類是無表觀一致性的數(shù)據(jù)利用全圖框來表征(如大量的背景圖及噪聲類),兩組數(shù)據(jù)獨(dú)立交替更新參數(shù)共享的檢測網(wǎng)絡(luò)。最后引入全圖分類模塊和梯度裁剪策略,加快模型收斂防止梯度爆炸。部署階段我們采用TensorRT int8量化模型來進(jìn)行優(yōu)化提速。
此外,為了解決長按識圖場景下對于部分商家圖片的LOGO大多是拼接在圖片角落的方式,或者以水印方式貼上的LOGO,我們引入了一個(gè)在線LOGO拼接的數(shù)據(jù)增強(qiáng)方式。對于標(biāo)注好的真實(shí)樣本,將LOGO的patch作為增強(qiáng)樣本,隨機(jī)padding到原圖無LOGO處。在合成過程中,我們主要采用了以下兩種方式來隨機(jī)合成:

(1)mixup方式

mixup是對圖像進(jìn)行混類增強(qiáng)的算法,可以將不同類之間的圖像進(jìn)行混合,從而擴(kuò)充訓(xùn)練數(shù)據(jù)集。
mixed_imgx=λ?imgx+(1?λ)?logo_patch

(2)替換式

直接對目標(biāo)區(qū)域位置進(jìn)行圖像替換,類似構(gòu)建水印的方式直接合成。
具體實(shí)現(xiàn)中也會采用兩種方式來選取合成區(qū)域,一種是將圖像劃分為特定子區(qū)域,在無LOGO區(qū)域內(nèi)采用上述方式合成,另一種是采用特定角落區(qū)域合成LOGO。
微信里識別LOGO又快又準(zhǔn)?背后有OCR模塊一份功勞

3.2?LOGO識別

在LOGO識別環(huán)節(jié),我們觀察到LOGO具有樣式多且款式多的情況。LOGO的類間差異大,LOGO的形式可能有圖案等視覺表征能力強(qiáng)的類別,也有文本類等視覺表征能力差的類別,以及介于兩者之間的藝術(shù)字類目。另一方面,同一款商家可能具有多款LOGO,包括LOGO升級迭代帶來的多款LOGO,以及同時(shí)包含文本類和圖案類的LOGO的情況。
為了實(shí)現(xiàn)文本類LOGO與圖案類LOGO(包含藝術(shù)字)的區(qū)別,以中國工商銀行為例我們構(gòu)建了新的LOGO體系如下圖所示。其中由于純CNN模型對于文本圖像的視覺特征表達(dá)能力不足,因此我們引入了OCR模型來對文本類的樣本進(jìn)行進(jìn)一步地檢驗(yàn)
微信里識別LOGO又快又準(zhǔn)?背后有OCR模塊一份功勞
識別模型訓(xùn)練過程中,我們將同一個(gè)商家的不同款式LOGO作為不同的類別來進(jìn)行細(xì)粒度分類模型的訓(xùn)練,沿用其他垂類基于互學(xué)習(xí)訓(xùn)練的網(wǎng)絡(luò)(如下圖所示)來作為特征提取backbone,基于resnet152和inceptionv4的互學(xué)習(xí)結(jié)構(gòu)訓(xùn)練分類模型,去掉fc后通過網(wǎng)絡(luò)提取特征,最終構(gòu)建faiss庫進(jìn)行LOGO檢索。
微信里識別LOGO又快又準(zhǔn)?背后有OCR模塊一份功勞
在LOGO體系分類中對于文本類的樣本,視覺特征表達(dá)能力有所欠缺,對于部分相似的文本容易出現(xiàn)誤召回,為此我們設(shè)計(jì)了OCR二次驗(yàn)證模塊。我們會對query區(qū)域進(jìn)行文字識別,然后計(jì)算query與召回結(jié)果的文本相似度,選取一定閾值作為輸出條件。關(guān)于OCR相關(guān)算法介紹可參考微信OCR圖片文字提取

四、總結(jié)與展望

本文介紹了微信掃一掃中LOGO檢測及識別的相關(guān)算法。LOGO識別上線后豐富了掃一掃及識圖的場景,同時(shí)也能推送相關(guān)的商家官方區(qū)或者公眾號,更便于用戶尋求相關(guān)服務(wù)
微信里識別LOGO又快又準(zhǔn)?背后有OCR模塊一份功勞
后續(xù)對于LOGO識別的探索還可以從更多方向進(jìn)行。一方面可以在LOGO檢測端引入OCR文本檢測的相關(guān)算法,如引入dbnet[5]的分割監(jiān)督,從而端到端得到LOGO的文本概率值,另一方面可以在識別過程中的特征表達(dá)中直接計(jì)算預(yù)測文本與top1的文本相似度。
?版權(quán)聲明:如無特殊說明,本站所有內(nèi)容均為AIHub.cn原創(chuàng)發(fā)布和所有。任何個(gè)人或組織,在未征得本站同意時(shí),禁止復(fù)制、盜用、采集、發(fā)布本站內(nèi)容到任何網(wǎng)站、書籍等各類媒體平臺。否則,我站將依法保留追究相關(guān)法律責(zé)任的權(quán)利。 Trae
主站蜘蛛池模板: 石林| 嘉兴市| 松阳县| 许昌县| 阜新市| 秦安县| 吉安市| 合作市| 伊吾县| 稻城县| 宜君县| 永丰县| 洛扎县| 六枝特区| 九龙县| 武邑县| 富民县| 兴海县| 夏邑县| 宁蒗| 呼玛县| 临夏县| 包头市| 资源县| 西贡区| 沁水县| 五大连池市| 五台县| 扬州市| 新余市| 钟山县| 留坝县| 东明县| 宜丰县| 鹰潭市| 岳西县| 道孚县| 富锦市| 久治县| 华安县| 海晏县|