• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于圖像識(shí)別的智能昆蟲(chóng)識(shí)別APP設(shè)計(jì)和實(shí)現(xiàn)

      2020-03-02 11:36:35王瀚洪蕾
      軟件 2020年1期
      關(guān)鍵詞:微服務(wù)圖像識(shí)別昆蟲(chóng)

      王瀚 洪蕾

      摘 ?要: 隨著新技術(shù)的快速發(fā)展,人們對(duì)于未知世界的探索也越來(lái)越深入。普通人對(duì)昆蟲(chóng)繁多的種類沒(méi)有細(xì)致的研究,缺少相關(guān)知識(shí),同時(shí)昆蟲(chóng)類科普知識(shí)的傳播方式比較單一。筆者通過(guò)圖像識(shí)別等相關(guān)技術(shù)開(kāi)發(fā)了昆蟲(chóng)智能識(shí)別APP,其中各類服務(wù)的部署應(yīng)用了Docker容器來(lái)實(shí)現(xiàn)微服務(wù)。APP運(yùn)行速度較快,滿足大部分的昆蟲(chóng)識(shí)別效率。并通過(guò)APP的動(dòng)態(tài)化配置提升客戶端的靈活性。

      關(guān)鍵詞: 圖像識(shí)別;微服務(wù);昆蟲(chóng)

      中圖分類號(hào): TP3 ? ?文獻(xiàn)標(biāo)識(shí)碼: A ? ?DOI:10.3969/j.issn.1003-6970.2020.01.025

      本文著錄格式:王瀚,洪蕾. 基于圖像識(shí)別的智能昆蟲(chóng)識(shí)別APP設(shè)計(jì)和實(shí)現(xiàn)[J]. 軟件,2020,41(01):118120

      【Abstract】: With fast development of new technologies, people have been exploring the unknown world more and more deeply. Common people have little detailed study of insect species, lacking relevant knowledge, at the same time, popular science knowledge of insects has simple broadcasting method. Through image recognition and other related technologies, the author developed an intelligent insect recognition APP, in which deployment of various services achieves micro-services with Docker container. APP runs fast and can meet most of insect recognition efficiency. And APP client flexibility can be enhanced through dynamic configuration.

      【Key words】: Image recognition; Micro-service; Insects

      0 ?引言

      隨著大數(shù)據(jù)技術(shù)AI技術(shù)的不斷發(fā)展,人們的生活也因技術(shù)的發(fā)展而不斷改變著,生活中小孩子常會(huì)問(wèn)大人一些他所好奇,不認(rèn)識(shí)的事物,如昆蟲(chóng)。而目前網(wǎng)絡(luò)上關(guān)于昆蟲(chóng)的資料多而雜,而且沒(méi)有一個(gè)方便的渠道可以讓人們快速便捷的得到自己想要的知識(shí)。

      目前這種集合昆蟲(chóng)數(shù)據(jù)與智能識(shí)別昆蟲(chóng)的APP很少。而隨著新技術(shù)的不斷發(fā)展以及中國(guó)越來(lái)越龐大的青年及少兒群體,人們對(duì)于特定知識(shí)獲取的需求會(huì)愈加強(qiáng)烈。本APP旨在為對(duì)昆蟲(chóng)感興趣的群體提供一個(gè)實(shí)用方便的知識(shí)獲取窗口。

      1 ?智能昆蟲(chóng)識(shí)別APP設(shè)計(jì)

      1.1 ?總體設(shè)計(jì)

      APP實(shí)現(xiàn)對(duì)用戶所拍攝的昆蟲(chóng)圖片進(jìn)行識(shí)別,并能夠提供昆蟲(chóng)相關(guān)的趣聞知識(shí),以及形象生動(dòng)的解說(shuō)視頻,讓用戶不用麻煩的外出尋找昆蟲(chóng),或查找昆蟲(chóng)相關(guān)資料,使得用戶便捷快速的獲取昆蟲(chóng)相關(guān)的知識(shí)。

      總體分為六個(gè)模塊,具體如圖1所示。

      地圖定位模塊包括定位用戶位置,記錄拍攝的昆蟲(chóng)。發(fā)現(xiàn)模塊包括昆蟲(chóng)相關(guān)趣聞推廣。識(shí)別模塊包括拍攝照片,并識(shí)別昆蟲(chóng)。視頻模塊包括昆蟲(chóng)相關(guān)介紹視頻,視頻下方可以發(fā)表評(píng)論進(jìn)行相關(guān)討論。圖鑒模塊包括為用戶提供諸多昆蟲(chóng)的圖像信息。昆蟲(chóng)數(shù)據(jù)模塊包括查詢具體的知識(shí)與昆蟲(chóng)圖集下載。

      三層開(kāi)發(fā)架構(gòu)通常都具備比較好的系統(tǒng)性能和效率,它通過(guò)中間件實(shí)現(xiàn)對(duì)數(shù)據(jù)的訪問(wèn),中間件則是一個(gè)獨(dú)立的組件,可以根據(jù)需求選擇合適的中間件組件。

      架構(gòu)設(shè)計(jì)所有的業(yè)務(wù)流程都是在系統(tǒng)上層中實(shí)現(xiàn),這就降低了另外兩個(gè)層次對(duì)于數(shù)據(jù)的處理壓力,可以更好的專注在當(dāng)前層功能實(shí)現(xiàn)上。APP架構(gòu)的交互圖如圖2所示。

      圖像識(shí)別部分,在基于機(jī)器學(xué)習(xí)的智能昆蟲(chóng)分目識(shí)別算法應(yīng)用的文章中已做過(guò)論證與說(shuō)明,在此不再贅述。

      1.2 ?動(dòng)態(tài)配置設(shè)計(jì)

      設(shè)計(jì)過(guò)程中發(fā)現(xiàn)客戶端大量的硬編碼導(dǎo)致其靈活性大大降低,例如一些細(xì)小的改動(dòng)只能通過(guò)發(fā)布版本解決。就用戶升級(jí)更新迭代速度慢,時(shí)效性差等原因,需要考慮APP的動(dòng)態(tài)化配置設(shè)計(jì)。

      實(shí)際中客戶端和服務(wù)端保持一個(gè)長(zhǎng)鏈的連接,當(dāng)在后臺(tái)操作配置時(shí),會(huì)把這個(gè)配置以K/V形式存儲(chǔ),隨后通知Processor,后者拿到K/V之后把它推給客戶端,整個(gè)過(guò)程完畢。長(zhǎng)鏈只能保證客戶端在線時(shí)能第一時(shí)間拿到配置中心的值,處于離線狀態(tài)(例如:用戶未打開(kāi)APP)時(shí)就無(wú)效了,因此需要想辦法使得用戶下一次打開(kāi)APP時(shí)可以拿到最新的值,于是設(shè)計(jì)在保存K/V時(shí),額外存一個(gè)flag字段,用來(lái)表示這個(gè)K/V是否已經(jīng)成功發(fā)送給客戶端。

      至此就要考慮三個(gè)問(wèn)題:存儲(chǔ)、流量和同步策略。

      通常一個(gè)設(shè)備的K/V對(duì)不會(huì)超過(guò)100項(xiàng),每對(duì)Size不超過(guò)1 K,也就是一臺(tái)設(shè)備對(duì)應(yīng)的大小上限為100 K左右,假如設(shè)備數(shù)為100萬(wàn),就需要100 G的磁盤(pán)空間,所占存儲(chǔ)空間是巨大的。考慮到一些配置項(xiàng)會(huì)在多個(gè)設(shè)備共存,便可以把這些配置單獨(dú)存儲(chǔ),將hash值作為Value。假設(shè)Key的size為30字節(jié),Value為10字節(jié),這樣就減少到40M的K/V存儲(chǔ)空間。然而這樣的設(shè)計(jì)又暴露出新問(wèn)題,Value的組合會(huì)很多,例如原來(lái)K1的Value為V1,更新之后變成V2,顯然需要新建一組Value,將其中的V1變?yōu)閂2,而因?yàn)椴恢乐暗囊唤MValue是否還有其他設(shè)備在引用就只能保存,這樣就會(huì)使得Value逐漸累積下去,要降低這種累積就需要設(shè)計(jì)清除算法。為了能夠降低復(fù)雜度,故引入索引,當(dāng)某個(gè)Key如果有新的Value,只需在對(duì)應(yīng)的Key后面append即可。此時(shí)需要同步更新設(shè)備的索引,持久化可以異步進(jìn)行。

      模擬單個(gè)設(shè)備的量可以達(dá)到100 K,如果每次配置有更新就發(fā)送100 K的數(shù)據(jù)這對(duì)到達(dá)率會(huì)有一定影響,尤其在設(shè)備網(wǎng)絡(luò)情況不佳的情況下。因此這里的目標(biāo)是如何減少數(shù)據(jù)傳輸量,同時(shí)盡量避免提升復(fù)雜度。直接的方法是對(duì)數(shù)據(jù)進(jìn)行壓縮,實(shí)際結(jié)果證實(shí)這是比較簡(jiǎn)單同時(shí)效果也不錯(cuò)的方法。

      2 ?智能昆蟲(chóng)識(shí)別APP實(shí)現(xiàn)

      為實(shí)現(xiàn)低維護(hù)成本,服務(wù)可快速遷移的設(shè)計(jì)要求開(kāi)發(fā)選用微服務(wù)技術(shù)。在服務(wù)構(gòu)件過(guò)程中應(yīng)用微服務(wù)來(lái)構(gòu)建整體的業(yè)務(wù)領(lǐng)域組件。其基本思想在于考慮圍繞著業(yè)務(wù)領(lǐng)域組件來(lái)創(chuàng)建應(yīng)用,這些應(yīng)用可獨(dú)立地進(jìn)行開(kāi)發(fā)、管理和加速。因?yàn)槲⒎?wù)可以在“自己的程序”中運(yùn)行,并通過(guò)“輕量級(jí)設(shè)備與HTTP型API進(jìn)行溝通”。通過(guò)這一點(diǎn)系統(tǒng)就可以將服務(wù)公開(kāi)與微服務(wù)架構(gòu)區(qū)分開(kāi)來(lái)。因?yàn)樵诜?wù)公開(kāi)中,許多服務(wù)都可以被內(nèi)部獨(dú)立進(jìn)程所限制,若其中一個(gè)服務(wù)需要增加某種功能,那么就必須縮小進(jìn)程范圍。而在微服務(wù)架構(gòu)中,只需要在特定的某種服務(wù)中增加所需功能,而不影響整體進(jìn)程。

      APP中各類服務(wù)的部署應(yīng)用了Docker容器來(lái)實(shí)現(xiàn),它整合了框架中各個(gè)部分功能。根據(jù)整個(gè)功能的劃分,系統(tǒng)主要包含了三個(gè)模塊:數(shù)據(jù)生成模塊、識(shí)別模塊、存儲(chǔ)模塊[4-9]。

      各個(gè)模塊之間會(huì)存在服務(wù)的搶占,這就會(huì)使得各個(gè)功能并發(fā)能力存在較大的問(wèn)題,由此分離了主、備數(shù)據(jù)庫(kù)、緩存服務(wù)等。在具體服務(wù)生成中在采用Docker容器和Spring Boot來(lái)實(shí)現(xiàn)算法框架并將其整合,這樣可以達(dá)到輕量級(jí)單元部署,易于維護(hù)。

      在完成智能識(shí)別服務(wù)后,將識(shí)別出來(lái)的昆蟲(chóng)圖像結(jié)果傳遞給用戶。結(jié)果生成中運(yùn)用JSON格式來(lái)進(jìn)行,其中JSON格式來(lái)使用服務(wù)模型服務(wù)的來(lái)回調(diào)用,并將其展示在客戶端中。由于JSON格式具備非常好的拓展性,可以在后期修改需求時(shí)實(shí)現(xiàn)屬性的快速增加。即使是較為復(fù)雜的格式形式或色彩較為復(fù)雜的圖像,JSON格式也能壓縮圖像像素,這就可以節(jié)約接口的回調(diào)時(shí)間。具體的功能實(shí)現(xiàn)如圖3圖4所示。

      3 ?結(jié)論

      軟件實(shí)現(xiàn)對(duì)用戶所拍攝的昆蟲(chóng)圖片進(jìn)行識(shí)別,并讓用戶便捷快速的獲取昆蟲(chóng)相關(guān)的知識(shí)。應(yīng)用Docker容器來(lái)實(shí)現(xiàn)微服務(wù),不僅可以提升識(shí)別效率,還可以提升APP訪問(wèn)后臺(tái)服務(wù)器的速度。通過(guò)APP的動(dòng)態(tài)化配置中心,它可以將配置,功能,界面,數(shù)據(jù)等各種配置數(shù)據(jù)統(tǒng)一進(jìn)行管理下發(fā),實(shí)時(shí)生效,極大地提升了客戶端的靈活性。

      參考文獻(xiàn)

      [1] 穆文秀, 洪蕾, 王瀚. 基于機(jī)器學(xué)習(xí)的智能昆蟲(chóng)分目識(shí)別算法應(yīng)用[J]. 數(shù)字技術(shù)與應(yīng)用, 2018, 36(11): 118-119.

      [2] 羅桂蘭, 楊自忠, 張梅, 等. 洱海濕地昆蟲(chóng)智能識(shí)別與實(shí)時(shí)監(jiān)測(cè)系統(tǒng)[J]. 大理大學(xué)學(xué)報(bào), 2018, 3(6): 6-12.

      [3] 李小林, 周蓬勃, 周明全, 等. 基于可區(qū)分二進(jìn)制局部模式特征的蛾類昆蟲(chóng)識(shí)別[J]. 計(jì)算機(jī)應(yīng)用與軟件, 2016, 33(3): 172-175.

      [4] 黃世國(guó). 基于圖像的昆蟲(chóng)識(shí)別關(guān)鍵技術(shù)研究[D]. 西北大學(xué), 2008.

      [5] 姚青, 呂軍, 楊保軍, 等. 基于圖像的昆蟲(chóng)自動(dòng)識(shí)別與計(jì)數(shù)研究進(jìn)展[J]. 中國(guó)農(nóng)業(yè)科學(xué), 2011, 44(14): 2886-2899.

      [6] 周紅, 王宏坡, ZHOUHong, 等. 基于VisualC++.NET的昆蟲(chóng)圖像自動(dòng)識(shí)別系統(tǒng)的研究[J]. 天津農(nóng)學(xué)院學(xué)報(bào), 2005, 12(2): 39-41.

      [7] 楊光. 國(guó)內(nèi)首款昆蟲(chóng)識(shí)別軟件研發(fā)成功[J]. 農(nóng)藥市場(chǎng)信息, 641(2): 16.

      [8] 張永玲, 姜夢(mèng)洲, 俞佩仕, 等. 基于多特征融合和稀疏表示的農(nóng)業(yè)害蟲(chóng)圖像識(shí)別方法[J]. 中國(guó)農(nóng)業(yè)科學(xué), v.51(11): 67-76.

      [9] 韓瑞珍. 基于機(jī)器視覺(jué)的農(nóng)田害蟲(chóng)快速檢測(cè)與識(shí)別研究[D]. 浙江大學(xué), 2014.

      猜你喜歡
      微服務(wù)圖像識(shí)別昆蟲(chóng)
      RFID昆蟲(chóng)閱讀放大鏡
      玩具世界(2022年3期)2022-09-20 01:48:20
      借昆蟲(chóng)上課
      甘肅教育(2020年2期)2020-09-11 08:01:48
      基于Resnet-50的貓狗圖像識(shí)別
      電子制作(2019年16期)2019-09-27 09:34:50
      高速公路圖像識(shí)別技術(shù)應(yīng)用探討
      圖像識(shí)別在物聯(lián)網(wǎng)上的應(yīng)用
      電子制作(2018年19期)2018-11-14 02:37:04
      我最喜歡的昆蟲(chóng)——知了
      圖像識(shí)別在水質(zhì)檢測(cè)中的應(yīng)用
      電子制作(2018年14期)2018-08-21 01:38:16
      昆蟲(chóng)的冬天
      微信公眾平臺(tái)在醫(yī)院圖書(shū)館的應(yīng)用現(xiàn)狀調(diào)查
      基于微信企業(yè)號(hào)的校園移動(dòng)服務(wù)
      柞水县| 钦州市| 锡林郭勒盟| 菏泽市| 新沂市| 新乐市| 呼伦贝尔市| 西乌| 黑河市| 滁州市| 炉霍县| 泰顺县| 鄂伦春自治旗| 遵化市| 仁布县| 云龙县| 宜州市| 开原市| 西青区| 社旗县| 太和县| 哈密市| 永仁县| 类乌齐县| 清丰县| 乌拉特后旗| 稻城县| 安达市| 广河县| 文水县| 唐河县| 和顺县| 无为县| 兴宁市| 洛阳市| 梧州市| 惠州市| 卓尼县| 海口市| 田东县| 太原市|