chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

實現(xiàn)圖像到文字的轉(zhuǎn)換過程

lviY_AI_shequ ? 來源:未知 ? 作者:李倩 ? 2018-04-04 08:51 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

賽題以識別類似手寫體的四則運算式為主題,參賽者需要在充滿干擾信息的10萬張圖片中,設計算法識別圖片上數(shù)學運算式并計算結(jié)果。決賽在初賽的基礎上,引入分數(shù)和更加復雜的運算,同樣以最終的識別率來評判算法。

本節(jié)會詳細介紹我在進行四則混合運算識別競賽初賽時的所有思路。

問題描述

本次競賽目的是為了解決一個 OCR 問題,通俗地講就是實現(xiàn)圖像到文字的轉(zhuǎn)換過程。

數(shù)據(jù)集

初賽數(shù)據(jù)集一共包含10萬張180*60的圖片和一個labels.txt的文本文件。每張圖片包含一個數(shù)學運算式,運算式包含:

3個運算數(shù):3個0到9的整型數(shù)字; 2個運算符:可以是+、-、*,分別代表加法、減法、乘法 0或1對括號:括號可能是0對或者1對

圖片的名稱從0.png到99999.png,下面是一些樣例圖片(這里只取了一張):

文本文件 labels.txt 包含10w行文本,每行文本包含每張圖片對應的公式以及公式的計算結(jié)果,公式和計算結(jié)果之間空格分開,例如圖片中的示例圖片對應的文本如下所示:

(3-7)+5 1

5-6+2 1

(6+7)*2 26

(4+2)+7 13

(6*4)*4 96

評價指標

官方的評價指標是準確率,初賽只有整數(shù)的加減乘運算,所得的結(jié)果一定是整數(shù),所以要求序列與運算結(jié)果都正確才會判定為正確。

我們本地除了會使用官方的準確率作為評估標準以外,還會使用 CTC loss 來評估模型。

使用 captcha 進行數(shù)據(jù)增強

官方提供了10萬張圖片,我們可以直接使用官方數(shù)據(jù)進行訓練,也可以通過Captcha,參照官方訓練集,隨機生成更多數(shù)據(jù),進而提高準確性。根據(jù)題目要求,label 必定是三個數(shù)字,兩個運算符,一對或沒有括號,根據(jù)括號規(guī)則,只有可能是沒括號,左括號和右括號,因此很容易就可以寫出數(shù)據(jù)生成器的代碼。

生成器

生成器的生成規(guī)則很簡單:

相信大家都能看懂。當然,我寫文章的時候又想到一種更好的寫法:

除了生成算式以外,還有一個值得注意的地方就是初賽所有的減號(也就是“-”)都是細的,但是我們直接用 captcha 庫生成圖像會得到粗的減號,所以我們修改了image.py中的代碼,在_draw_character函數(shù)中我們增加了一句判斷,如果是減號,我們就不進行 resize 操作,這樣就能防止減號變粗:

我們繼而使用生成器生成四則運算驗證碼:

上圖就是原版生成器生成的圖,我們可以看到減號是很粗的。

上圖是修改過的生成器,可以看到減號已經(jīng)不粗了。

模型結(jié)構

模型結(jié)構像之前寫的文章一樣,只是把卷積核的個數(shù)改多了一點,加了一些 BN 層,并且在四卡上做了一點小改動以支持多GPU訓練。如果你是單卡,可以直接去掉base_model2 = make_parallel(base_model, 4)的代碼。

BN 層主要是為了訓練加速,實驗結(jié)果非常好,模型收斂快了很多。

base_model 的可視化:

model 的可視化:

模型訓練

在經(jīng)過幾次測試以后,我已經(jīng)拋棄了 evaluate 函數(shù),因為在驗證集上已經(jīng)能做到 100% 識別率了,所以只需要看 val_loss 就可以了。在經(jīng)過之前的幾次嘗試以后,我發(fā)現(xiàn)在有生成器的情況下,訓練代數(shù)越多越好,因此直接用 adam 跑了50代,每代10萬樣本,可以看到模型在10代以后基本已經(jīng)收斂。

我們可以看到模型先分為四份,在四個顯卡上并行計算,然后合并結(jié)果,計算最后的 ctc loss,進而訓練模型。

結(jié)果可視化

這里我們對生成的數(shù)據(jù)進行了可視化,可以看到模型基本已經(jīng)做到萬無一失,百發(fā)百中。

打包成 docker 以后提交到比賽系統(tǒng)中,經(jīng)過十幾分鐘的運行,我們得到了完美的1分。

總結(jié)

初賽是非常簡單的,因此我們才能得到這么準的分數(shù),之后官方進一步提升了難度,將初賽測試集提高到了20萬張,在這個集上我們的模型只能拿到0.999925的成績,可行的改進方法是將準確率進一步降低,充分訓練模型,將多個模型結(jié)果融合等。

官方擴充測試集的難點

在擴充數(shù)據(jù)集上,我們發(fā)現(xiàn)有一些圖片預測出來無法計算,比如[629,2271,6579,17416,71857,77631,95303,102187,117422,142660,183693]等,這里我們?nèi)?117422.png 為例。

我們可以看到肉眼基本無法認出這個圖,但是經(jīng)過一定的圖像處理,我們可以顯現(xiàn)出來它的真實面貌:

然后我們可以看到這樣的結(jié)果:

當然,還有一張圖是無法通過預處理得到結(jié)果的,142660,這有可能是程序的 bug 造成的小概率事件,所以初賽除了我們跑了一個 docker 得到滿分以外,沒有第二個人達到滿分。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 圖像
    +關注

    關注

    2

    文章

    1094

    瀏覽量

    42003
  • 代碼
    +關注

    關注

    30

    文章

    4922

    瀏覽量

    72221
  • 生成器
    +關注

    關注

    7

    文章

    322

    瀏覽量

    22391

原文標題:百度魅族深度學習大賽初賽冠軍作品(圖像識別.源碼)

文章出處:【微信號:AI_shequ,微信公眾號:人工智能愛好者社區(qū)】歡迎添加關注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    模數(shù)A/D轉(zhuǎn)換器的基本原理與轉(zhuǎn)換過程解析

    在一系列選定的瞬間對模擬信號進行取樣,然后再將這些取樣值轉(zhuǎn)換成輸出的數(shù)字量,并按一定的編碼形式給出轉(zhuǎn)換結(jié)果。整個A/D轉(zhuǎn)換過程大致可分為取樣、量化、編碼三個過程。
    發(fā)表于 08-03 15:22 ?8663次閱讀
    模數(shù)A/D<b class='flag-5'>轉(zhuǎn)換</b>器的基本原理與<b class='flag-5'>轉(zhuǎn)換過程</b>解析

    A/D轉(zhuǎn)換器的轉(zhuǎn)換過程及電路分析

    值也離散的數(shù)字信號,因此,A/D轉(zhuǎn)換一般要經(jīng)過取樣、保持、量化及編碼4個過程。在實際電路中,這些過程有的是合并進行的,例如,取樣和保持,量化和編碼往往都是在轉(zhuǎn)換過程中同時
    發(fā)表于 02-28 18:04 ?8246次閱讀
    A/D<b class='flag-5'>轉(zhuǎn)換</b>器的<b class='flag-5'>轉(zhuǎn)換過程</b>及電路分析

    晶體二極管的開關轉(zhuǎn)換過程

    晶體二極管開關電源轉(zhuǎn)換過程分析
    發(fā)表于 05-21 07:24

    當將IoT原理應用到工廠流程時,在轉(zhuǎn)換過程中會丟失什么?

    當將IoT原理應用到工廠流程時,在轉(zhuǎn)換過程中會丟失什么?
    發(fā)表于 06-16 09:01

    AD轉(zhuǎn)換過程是通過哪幾個步驟完成的

    模擬分頻器是什么?AD轉(zhuǎn)換過程是通過哪幾個步驟完成的?壓敏電阻的作用有哪些?
    發(fā)表于 10-18 06:00

    一文淺析ADC的轉(zhuǎn)換過程

      ADC轉(zhuǎn)換過程:取樣保持、量化和編碼?! ?) 采樣保持:模擬電子開關S在采樣脈沖CPS的控制下重復的開關。S接通時,ui(t)對C充電,為采樣過程;S斷開時,C上的電壓保持不變,為保持過程
    發(fā)表于 03-16 18:06

    圖像文字的合成

    前幾天要做一段程序,把文字和位圖圖像合成并保存為位圖文件。但問了好久都沒人給一個滿意的答復,只好在黑暗中摸索,費了一番功夫,實現(xiàn)圖像文字
    發(fā)表于 10-25 15:50 ?3次下載

    電液伺服系統(tǒng)位置與壓力控制轉(zhuǎn)換過程的加減速算法與仿真

    電液伺服系統(tǒng)位置與壓力控制轉(zhuǎn)換過程的加減速算法與仿真
    發(fā)表于 05-03 14:23 ?8次下載

    詳解晶體二極管開關轉(zhuǎn)換過程

    晶體二極管開關電路在數(shù)字系統(tǒng)和自動化系統(tǒng)里應用很廣泛,在晶體二極管開關特性實驗中,其開關轉(zhuǎn)換過程中輸出與輸入存在時間上的延遲或者滯后,研究晶體二極管開關特性主要是研究其開關狀態(tài)轉(zhuǎn)換過程所需時間的長短。
    的頭像 發(fā)表于 01-08 16:04 ?5665次閱讀
    詳解晶體二極管開關<b class='flag-5'>轉(zhuǎn)換過程</b>

    如何使用FPGA實現(xiàn)BayerRGB圖像格式轉(zhuǎn)換的設計

    利用FPGA處理數(shù)據(jù)量大、處理速度快,結(jié)合CMOS圖像傳感器MT9M001和BayerCFA格式圖像的特點,設計一種基于FPGA的圖像數(shù)據(jù)轉(zhuǎn)換處理系統(tǒng),提出用硬件
    發(fā)表于 01-25 16:04 ?6次下載
    如何使用FPGA<b class='flag-5'>實現(xiàn)</b>Bayer<b class='flag-5'>到</b>RGB<b class='flag-5'>圖像</b>格式<b class='flag-5'>轉(zhuǎn)換</b>的設計

    Linux虛擬地址物理地址轉(zhuǎn)換過程

    虛擬地址物理地址轉(zhuǎn)換過程 虛擬地址和物理地址都被劃分了兩部分: 虛擬地址由虛擬頁面號VPN和虛擬地址偏移VA offset兩部分組成。同樣,物理地址由物理頁幀號PFN和物理地址偏移PA
    的頭像 發(fā)表于 10-08 11:45 ?2841次閱讀
    Linux虛擬地址<b class='flag-5'>到</b>物理地址<b class='flag-5'>轉(zhuǎn)換過程</b>

    一文講解ADC模數(shù)轉(zhuǎn)換芯片的原理及轉(zhuǎn)換過程

    和傳輸時,就需要ADC模擬轉(zhuǎn)換芯片幫助我們實現(xiàn)這一功能。ADC芯片全稱Analog-to-Digital Converter(模擬數(shù)字轉(zhuǎn)換器),是一個幫助我們將模擬信號轉(zhuǎn)換成為數(shù)字信號
    的頭像 發(fā)表于 10-23 14:57 ?3383次閱讀

    應用衛(wèi)星通信領域的一個坐標轉(zhuǎn)換過程—機體坐標系與ENU坐標系的轉(zhuǎn)換

    今天我們要講的是應用于衛(wèi)星通信領域的一個坐標轉(zhuǎn)換過程——機體坐標系與ENU坐標系的轉(zhuǎn)換。
    的頭像 發(fā)表于 12-27 09:30 ?7043次閱讀
    應用衛(wèi)星通信領域的一個坐標<b class='flag-5'>轉(zhuǎn)換過程</b>—機體坐標系與ENU坐標系的<b class='flag-5'>轉(zhuǎn)換</b>

    SDI轉(zhuǎn)AV轉(zhuǎn)換器技術解析:轉(zhuǎn)換過程中的關鍵要素與優(yōu)勢

    隨著高清視頻技術的快速發(fā)展,SDI(Serial Digital Interface)轉(zhuǎn)AV轉(zhuǎn)換器成為了實現(xiàn)高清信號與普通家電設備兼容的關鍵設備。這種轉(zhuǎn)換器在技術上涉及多個關鍵要素,
    的頭像 發(fā)表于 02-22 15:03 ?1112次閱讀

    一文看懂ADC轉(zhuǎn)換過程

    1、A /D轉(zhuǎn)換的一般步驟和取樣定理模擬量到數(shù)字量的轉(zhuǎn)換過程: 取樣:把時間連續(xù)變化的信號變換為時間離散的信號。 保持:保持取樣信號,使有充分時間將其變?yōu)閿?shù)字信號。 取樣定理: 量化和編碼:? 量化
    的頭像 發(fā)表于 01-23 17:43 ?2542次閱讀
    一文看懂ADC<b class='flag-5'>轉(zhuǎn)換過程</b>