基于django的百度飛漿芯片質(zhì)檢數(shù)據(jù)采集分析可視化網(wǎng)站設(shè)計_第1頁
基于django的百度飛漿芯片質(zhì)檢數(shù)據(jù)采集分析可視化網(wǎng)站設(shè)計_第2頁
基于django的百度飛漿芯片質(zhì)檢數(shù)據(jù)采集分析可視化網(wǎng)站設(shè)計_第3頁
基于django的百度飛漿芯片質(zhì)檢數(shù)據(jù)采集分析可視化網(wǎng)站設(shè)計_第4頁
基于django的百度飛漿芯片質(zhì)檢數(shù)據(jù)采集分析可視化網(wǎng)站設(shè)計_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計

目錄

1引言............................................................................................................................1

1.1項目開發(fā)背景..............................................................................................1

1.2開發(fā)技術(shù)簡介..............................................................................................2

1.2.1Python簡介..........................................................................................2

1.2.2Django的運行原理..............................................................................2

1.2.3網(wǎng)站頁面的組成...................................................................................3

1.3開發(fā)工具簡介..............................................................................................5

1.4項目開發(fā)環(huán)境與部署..................................................................................5

2需求分析....................................................................................................................6

2.1功能需求描述..............................................................................................6

2.2非功能需求描述..........................................................................................6

2.3需求用例建模..............................................................................................7

2.3.1數(shù)據(jù)采集功能模塊的用例...................................................................7

2.3.2用戶登入功能模塊的用例...................................................................8

2.3.3數(shù)據(jù)可視化功能模塊的用例...............................................................8

3系統(tǒng)概要設(shè)計..........................................................................................................10

3.1系統(tǒng)設(shè)計原則............................................................................................10

3.2系統(tǒng)框架設(shè)計............................................................................................10

3.3系統(tǒng)功能設(shè)計............................................................................................11

3.3.1數(shù)據(jù)采集功能設(shè)計.............................................................................12

3.3.2用戶登入功能設(shè)計.............................................................................13

3.3.3數(shù)據(jù)可視化功能設(shè)計.........................................................................14

3.4數(shù)據(jù)庫設(shè)計................................................................................................15

3.4.1設(shè)計原則.............................................................................................15

3.4.2概念設(shè)計.............................................................................................15

3.4.3邏輯設(shè)計.............................................................................................16

4系統(tǒng)功能設(shè)計與實現(xiàn)..............................................................................................16

I

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計

4.1數(shù)據(jù)采集子模塊實現(xiàn)................................................................................16

4.1.1數(shù)據(jù)采集模塊設(shè)計.............................................................................16

4.1.2數(shù)據(jù)采集模塊核心代碼實現(xiàn).............................................................17

4.2用戶登入子模塊實現(xiàn)................................................................................18

4.2.1用戶登錄界面設(shè)計.............................................................................19

4.2.2用戶登錄界面核心代碼實現(xiàn):.........................................................19

4.2.3用戶注冊界面設(shè)計.............................................................................20

4.2.4用戶注冊界面核心代碼實現(xiàn):.........................................................21

4.3數(shù)據(jù)可視化子模塊實現(xiàn)............................................................................21

4.3.1芯片合格率可視化模塊界面設(shè)計.....................................................21

4.3.2芯片合格率可視化模塊核心代碼實現(xiàn).............................................22

4.3.3芯片合格數(shù)量可視化模塊界面設(shè)計.................................................22

4.3.4芯片合格數(shù)量可視化模塊核心代碼實現(xiàn).........................................23

4.3.5質(zhì)檢Confidence可視化模塊界面設(shè)計...........................................23

4.3.6質(zhì)檢Confidence可視化模塊核心代碼實現(xiàn)...................................24

4.3.7質(zhì)檢Score可視化模塊界面設(shè)計.....................................................25

4.3.8質(zhì)檢Score可視化模塊核心代碼實現(xiàn).............................................25

5系統(tǒng)測試..................................................................................................................26

5.1功能性測試................................................................................................26

5.2界面測試....................................................................................................27

5.3安全性測試................................................................................................27

5.4兼容性測試................................................................................................28

6設(shè)計小結(jié)..................................................................................................................29

參考資料.........................................................................................................................30

II

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計

基于django的百度飛漿芯片質(zhì)檢數(shù)據(jù)采集分析可視

化網(wǎng)站設(shè)計

1引言

工廠生產(chǎn)主要從事各類工業(yè)部件的生產(chǎn)加工,由于工廠的生產(chǎn)環(huán)境十分復(fù)雜,

生產(chǎn)過程中存在發(fā)生剮蹭、磕碰、制作疏漏的可能性,存在瑕疵的商品需按照殘

次品處理,不可進(jìn)入市場銷售。工業(yè)瑕疵質(zhì)檢精細(xì)度要求較高,無法及時反饋和

修正問題,缺陷通常細(xì)微難以發(fā)現(xiàn),傳統(tǒng)的人工質(zhì)檢方式效率低,難以適應(yīng)復(fù)雜

多變的檢測環(huán)境,長時間作業(yè)容易出現(xiàn)視覺疲勞發(fā)生錯檢、漏檢的現(xiàn)象。質(zhì)檢效

率低將直接影響工廠產(chǎn)能及交付效率。百度EasyDL的質(zhì)檢模型結(jié)合了深度學(xué)習(xí)

技術(shù)、云計算和API服務(wù),提供了高效、準(zhǔn)確、可定制和低成本的質(zhì)檢解決方

案。不需要了解算法基礎(chǔ)即可快速完成模型訓(xùn)練,EasyDL提供的物體檢測任務(wù)

類型經(jīng)過快速訓(xùn)練,提供高度準(zhǔn)確的質(zhì)檢模型,避免了人工檢測中的誤判和漏檢

問題,并提供針對專業(yè)領(lǐng)域的預(yù)訓(xùn)練模型,極大地提高了模型的訓(xùn)練效率和準(zhǔn)確

性。同時,大大降低模型部署和維護(hù)的成本。

另外,一批工業(yè)工件的質(zhì)量同樣也反映了當(dāng)時工廠生產(chǎn)加工環(huán)境的狀況,反

映了機床部件的精確度,及時發(fā)現(xiàn)機床部件對生產(chǎn)加工的誤差能節(jié)省工業(yè)原料的

損耗,減少不必要的成本損失。因此,對生產(chǎn)工件數(shù)據(jù)的實時監(jiān)控同樣至關(guān)重要。

在把控工件生產(chǎn)質(zhì)量的同時,還能及時對機床調(diào)整檢修。通過查看以往的批量工

件產(chǎn)品數(shù)據(jù),用于與現(xiàn)在的數(shù)據(jù)進(jìn)行對比,起到參考的作用;監(jiān)控現(xiàn)在的生產(chǎn)狀

況,通過對比數(shù)據(jù)判斷數(shù)據(jù)是否正常以反映機床生產(chǎn)狀況;通過監(jiān)測業(yè)務(wù)指標(biāo)的

變化情況,分析其產(chǎn)生變化的原因;還可以對未來的業(yè)務(wù)可能出現(xiàn)的變化趨勢做

預(yù)測,根據(jù)趨勢走向參考指標(biāo)數(shù)據(jù),對成本進(jìn)行控制。

這樣的設(shè)計不僅可以協(xié)助質(zhì)檢員實現(xiàn)綜合化管理、把握整體的生產(chǎn)狀態(tài),同

時還具備豐富的可視化效果,將監(jiān)控數(shù)據(jù)進(jìn)行有效的呈現(xiàn)??梢暬某尸F(xiàn)效果,

極大地幫助質(zhì)檢員提高處理問題的效率。通過降低生產(chǎn)成本,更合理地調(diào)度資源,

使資源利用最大化。

1.1項目開發(fā)背景

在信息化時代下,大數(shù)據(jù)監(jiān)管這類新型規(guī)制工具在監(jiān)管成本、效率與數(shù)據(jù)展

示等方面體現(xiàn)出諸多潛在優(yōu)勢,只有平臺監(jiān)管實現(xiàn)了數(shù)字化、信息化,才有可能

實時形成數(shù)據(jù)、進(jìn)行匯總,在發(fā)現(xiàn)異常行為時及時預(yù)警,并根據(jù)預(yù)設(shè)方案進(jìn)行處

1

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計

理。也就是說,實時監(jiān)管是大數(shù)據(jù)時代下的必然趨勢。相比于傳統(tǒng)監(jiān)管,大數(shù)據(jù)

監(jiān)管反映出工業(yè)生產(chǎn)中的相關(guān)問題,降低監(jiān)管人員的工作成本。從大數(shù)據(jù)的角度

來說,這些工業(yè)生產(chǎn)管理的有效數(shù)據(jù)還可以進(jìn)行再應(yīng)用,通過脫敏、清洗等手段,

進(jìn)入到數(shù)據(jù)交易中心進(jìn)行交易,最后變成工業(yè)工件大數(shù)據(jù)當(dāng)中的一部分。

因此,我的畢業(yè)設(shè)計也就正是一個利用Django搭建的集數(shù)據(jù)采集、分析和

可視化為一體的百度飛漿芯片質(zhì)檢數(shù)據(jù)監(jiān)測平臺。

1.2開發(fā)技術(shù)簡介

Django,EasyDL,Requests,re,OS,PyEcharts,MySQL,HTML,CSS。

1.2.1Python簡介

Python支持各種網(wǎng)絡(luò)協(xié)議,因此編寫服務(wù)器軟件、網(wǎng)絡(luò)爬蟲、Web開發(fā)。

第三方Scrapy支持異步網(wǎng)絡(luò)編程和多數(shù)標(biāo)準(zhǔn)的網(wǎng)絡(luò)協(xié)議,且提供了多種工具,

被廣泛用于編寫高性能的服務(wù)器。

1.2.2Django的運行原理

Django作為可擴展、可跨平臺、有多種用戶角色的Web應(yīng)用程序,它們各

自的職責(zé)如下:

層次功能

模型(Model),即數(shù)據(jù)存取層處理與數(shù)據(jù)相關(guān)的所有事務(wù):如何

存取、如何驗證有效性、包含哪些行為

以及數(shù)據(jù)之間的關(guān)系等。

模板(Template),即表現(xiàn)層處理與表現(xiàn)相關(guān)的決定:如何在頁

面或其他類型文檔中進(jìn)行顯示。

視圖(View),即業(yè)務(wù)邏輯層存取模型及調(diào)取恰當(dāng)模板的相關(guān)

邏輯。模型與模板的橋梁。

Django視圖不處理用戶輸入,只決定要展現(xiàn)給用戶的數(shù)據(jù),因此Django模

板只決定如何將指定的數(shù)據(jù)進(jìn)行展現(xiàn),MVC中的視圖分為視圖和模板兩個部分,

分別決定“數(shù)據(jù)”和“展現(xiàn)”,因此Django的模板可以根據(jù)需要進(jìn)行替換,不

只限制于內(nèi)置的模板。

至于MVC控制器部分,由Django框架的URLconf來實現(xiàn)。URLconf機制

是使用正則表達(dá)式匹配URL,然后調(diào)用合適的Python函數(shù)。URLconf對于URL

的規(guī)則沒有任何限制??蚣軐刂茖舆M(jìn)行了封裝,與數(shù)據(jù)交互這層都是數(shù)據(jù)庫表

的curd操作。編寫程序時,只需調(diào)用相應(yīng)的方法,將控制層內(nèi)容交給Django自

動完成。

2

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計

1.2.3網(wǎng)站頁面的組成

網(wǎng)站頁面設(shè)計遵從以下原則:

(1)以用戶為中心。

(2)視覺美觀。呈現(xiàn)給用戶一個視覺美觀、操作方便的網(wǎng)頁界面。

(3)主題明確。設(shè)計要表達(dá)出一定的意圖和要求,有明確的主題,單純、

簡練、清晰和精準(zhǔn),還需要在凸顯藝術(shù)性的同時通過視覺沖擊力來體現(xiàn)主題。

(4)內(nèi)容與形式統(tǒng)一。

(5)整體性。網(wǎng)頁設(shè)計的整體性包括內(nèi)容上和形式上兩方面,網(wǎng)頁的內(nèi)容

主要是指Logo、文字、圖像和動畫等,形式是指整體版式和不同內(nèi)容的布局方

式。在設(shè)計網(wǎng)頁時,強調(diào)頁面各組成部分的共性因素是形成整體性的常用方法。

強調(diào)整體性更有利于用戶全面了解,并給人整體統(tǒng)一的美感。

首頁登錄頁面:

圖1-1首頁登陸頁面

注冊頁面:

3

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計

圖1-2注冊頁面

用戶頁面:

圖1-3用戶頁面

游客頁面:

4

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計

圖1-4游客頁面

1.3開發(fā)工具簡介

工具的使用:采用PyCharm+Navicat

PyCharm集成的插件足夠多,基本可以實現(xiàn)Web方面的所有開發(fā)功能。

Navicat其優(yōu)點有:支持多種數(shù)據(jù)庫驅(qū)動數(shù)據(jù)和結(jié)構(gòu)的同步,優(yōu)秀的導(dǎo)入與

導(dǎo)出功能使得數(shù)據(jù)轉(zhuǎn)移更加便捷,具有可視化的查詢與結(jié)果顯示,支持多種語言。

程序采用了Django開發(fā),模式遵循MVC的設(shè)計理念。

1.4項目開發(fā)環(huán)境與部署

從網(wǎng)站的運作全過程可見,運行項目最少需要三樣?xùn)|西:Python、Django、

數(shù)據(jù)庫和瀏覽器。最常用的Django開發(fā)工具包括Pycharm和VSCode。本網(wǎng)站

采用Pycharm作為Django的開發(fā)工具,Pycharm是一個功能強大高效的Python

項目開發(fā)工具,支持Django框架下的專業(yè)Web開發(fā)。所用的操作系統(tǒng)是Wind10,

數(shù)據(jù)庫采用的是MySQL,用于數(shù)據(jù)存儲和管理,作為可擴展且易于使用的開源

關(guān)系數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)可移植性強。首先把JDK,tomcat安裝到本地硬盤C盤根

目錄下.設(shè)置好環(huán)境。

首先直接把項目下載到本地。在Pycharm終端中輸入pythonmanage.pyrunse

rver9999成功啟動Django如下圖1-5所示:

5

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計

圖1-5Django啟動圖

在瀏覽器中輸入http://localhost:9999/visual/login/(或者h(yuǎn)ttp://:9999/

visual/login/)啟動成功界面如下圖1-1所示。

然后在用戶登錄框中輸出工號/密碼:0001/12345即可登錄如圖1-3所示。

2需求分析

2.1功能需求描述

我們正處在數(shù)據(jù)爆炸的時代,數(shù)據(jù)可以為行業(yè)從事人員提供有關(guān)問題深入的

見解,要從大量冗余數(shù)據(jù)中提取有價值的數(shù)據(jù)尤為重要。通過大數(shù)據(jù)監(jiān)管平臺使

得工作過程更加直觀高效。在大數(shù)據(jù)時代的必然趨勢下,本項目通過對芯片數(shù)據(jù)

科學(xué)有效的分析,直觀地展示在監(jiān)管平臺以改進(jìn)工業(yè)生產(chǎn)業(yè)務(wù)流程并提高工作效

率。

(1)通過該網(wǎng)站頁,企業(yè)用戶不但可以從網(wǎng)站上了解關(guān)于芯片的質(zhì)量,進(jìn)

行數(shù)據(jù)統(tǒng)計,而且還可以通過數(shù)據(jù)分析來判斷機床生產(chǎn)狀況,對生產(chǎn)機床進(jìn)行調(diào)

整檢修,確保芯片生產(chǎn)的質(zhì)量從而減少工業(yè)原料的損耗。

(2)網(wǎng)頁可以動態(tài)的與數(shù)據(jù)庫相連接,將數(shù)據(jù)庫中的數(shù)據(jù)以各種圖表的形

式展示在網(wǎng)頁上,企業(yè)工作人員可以根據(jù)需要選擇合適的圖標(biāo)進(jìn)行更好的數(shù)據(jù)展

示數(shù)據(jù)變化的趨勢,根據(jù)網(wǎng)頁上圖表的變化來推測實際數(shù)據(jù)的變化。

(3)網(wǎng)站與百度飛漿EasyDL開發(fā)平臺相結(jié)合,隨時可提供工業(yè)模型訓(xùn)練,

針對企業(yè)需求制定個性化的模型訓(xùn)練,為企業(yè)帶來更多的選擇。

2.2非功能需求描述

在系統(tǒng)運行期間影響系統(tǒng)運行,用戶操作體驗的非功能性要求影響系統(tǒng)開發(fā)

和運維的非功能性要求。一個成功的系統(tǒng)通常都會同時滿足多個非功能性需求。

在滿足一個非功能性需求時,需要考慮對其他非功能性需求的影響并找出非功能

性需求之間的折中方案(找到多個質(zhì)量屬性之間的平衡)。每個系統(tǒng)對非功能需

求要求以及即使非功能性需求相同,其中的優(yōu)先級也是不同的。本系統(tǒng)的非功能

6

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計

性需求有以下幾個方面:

(1)性能:企業(yè)用戶僅需要用戶管理功能,在數(shù)據(jù)可視化展示運行時資源

消耗量小。

(2)可靠性:企業(yè)用戶的網(wǎng)站失效的頻率低、數(shù)據(jù)存儲在MySQL易恢復(fù)

性好且安全性高。

(3)易用性:企業(yè)用戶界面的易用性、美觀性良好,界面對EasyDL的銜

接契合。

(4)安全性:工業(yè)生產(chǎn)數(shù)據(jù)私密,綜合身份認(rèn)證控制、數(shù)據(jù)安全等方面的

基本要求。

(5)運行環(huán)境約束:企業(yè)用戶對網(wǎng)站系統(tǒng)運行環(huán)境要求僅需在服務(wù)器中部

署啟動項目即可。

(6)可拓展性:針對不同工業(yè)生產(chǎn)需求,工業(yè)部件生產(chǎn)標(biāo)準(zhǔn)有所差異。數(shù)

據(jù)采集進(jìn)數(shù)據(jù)庫中統(tǒng)一管理,數(shù)據(jù)圖表展示個性化強。

2.3需求用例建模

通過對功能需求的分析,創(chuàng)建以下總體用例模型,如圖2-1所示:

圖2-1網(wǎng)站的總體用例模型圖

用戶登錄進(jìn)行數(shù)據(jù)可視化展示以及模型訓(xùn)練。

2.3.1數(shù)據(jù)采集功能模塊的用例

在工業(yè)生產(chǎn)過程中,各式各樣的工業(yè)部件,多種芯片模型存在一定的差異,

同一質(zhì)檢模型對不同零件質(zhì)檢報告會存在一定誤差。用戶可以通過該可視化網(wǎng)站

進(jìn)入EasyDL平臺進(jìn)行圖像處理模塊,訓(xùn)練物體檢測模型。創(chuàng)建數(shù)據(jù)集,在線標(biāo)

注模型后,通過模型訓(xùn)練并發(fā)布。將芯片圖片上傳至模型即可得到芯片相關(guān)數(shù)據(jù)。

如圖2-2所示:

7

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計

圖2-2數(shù)據(jù)采集模塊用例圖

2.3.2用戶登入功能模塊的用例

本網(wǎng)站用戶分為企業(yè)用戶和游客用戶。企業(yè)用戶可以查看芯片數(shù)據(jù)的所有分

析圖表,而游客用戶僅可查看芯片合格率的儀表測量圖。通過對企業(yè)用戶和游客

用戶權(quán)限進(jìn)行區(qū)分,保護(hù)數(shù)據(jù)分析的私密性。

圖2-3用戶登入功能模塊用例圖

2.3.3數(shù)據(jù)可視化功能模塊的用例

企業(yè)用戶可視化界面將對芯片合格率、芯片合格數(shù)量、質(zhì)檢Confidence、質(zhì)

檢Score四個模塊進(jìn)行數(shù)據(jù)可視化展示,而游客用戶僅可以查看芯片合格率。讓

用戶界面層甚至可以不知道數(shù)據(jù)庫的結(jié)構(gòu),當(dāng)要對數(shù)據(jù)進(jìn)行維護(hù)的時候,它只要

維護(hù)與業(yè)務(wù)層之間的接口即可。

8

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計

圖2-4可視化功能模塊用例圖

通過對用例的細(xì)化,使用活動圖針對系統(tǒng)動態(tài)行為進(jìn)行建模??梢暬δ苣?/p>

塊活動圖如圖2-5所示:

圖2-5數(shù)據(jù)可視化功能模塊用例圖

通過對圖2-2用例圖及圖2-3活動圖進(jìn)一步的細(xì)化分析,得到每個用例的描

述表??梢暬δ苣K用例描述如表2-1所示:

9

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計

表2-1可視化功能模塊用例描述

項目描述

用例名稱數(shù)據(jù)可視化展示

用例標(biāo)識號01

參與者企業(yè)用戶、游客用戶

參與者選擇輸入工號以及密碼,系統(tǒng)進(jìn)行驗證后合法者登

簡要說明錄系統(tǒng),否則提供拒絕登錄系統(tǒng)?;蛘哌x擇游客用戶進(jìn)行

登錄。

前置條件參與者已經(jīng)打開系統(tǒng)的登錄頁面如圖1-1。

1.參與者在工號輸入框里輸入工號

2.在密碼框里輸入密碼

3.用戶按登錄后,系統(tǒng)驗證參與者輸入的有效性。

基本事件流4.有效則進(jìn)入數(shù)據(jù)可視化界面。無效則提示相應(yīng)錯誤給用

戶。

5.在登錄頁面選擇進(jìn)入游客用戶數(shù)據(jù)可視化界面。

6.用例終止。

在按“登錄”按鈕之前,參與者可以隨按“取消”或“關(guān)

其他事件流

閉”按鈕。

異常事件流提示錯誤信息,參與人確認(rèn)。

后置條件進(jìn)入的數(shù)據(jù)可視化界面,裝載相應(yīng)的數(shù)據(jù)

3系統(tǒng)概要設(shè)計

3.1系統(tǒng)設(shè)計原則

(1)統(tǒng)一設(shè)計原則統(tǒng)籌規(guī)劃和統(tǒng)一設(shè)計系統(tǒng)結(jié)構(gòu)。

(2)先進(jìn)性原則系統(tǒng)構(gòu)成。在設(shè)計過程中充分依照國際上的規(guī)范、標(biāo)準(zhǔn),

借鑒國內(nèi)外目前成熟的主流網(wǎng)絡(luò)和綜合信息系統(tǒng)的體系結(jié)構(gòu),以確保系統(tǒng)具有較

長的生命力和擴展能力。保證新進(jìn)行的同時還要保證技術(shù)的穩(wěn)定、安全性。

(3)高安全性原則設(shè)計和數(shù)據(jù)構(gòu)架設(shè)計中充分考慮系統(tǒng)的安全。

(4)標(biāo)準(zhǔn)化原則系統(tǒng)各項技術(shù)遵循國際標(biāo)準(zhǔn)、國家標(biāo)準(zhǔn)、行業(yè)和相關(guān)規(guī)范。

3.2系統(tǒng)框架設(shè)計

根據(jù)系統(tǒng)的需求分析、用例建模分析結(jié)合開發(fā)平臺的特點設(shè)計數(shù)據(jù)可視化系

統(tǒng)的系統(tǒng)架構(gòu)模型,如圖3-1所示。

10

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計

圖3-1可視化系統(tǒng)整體架構(gòu)圖

3.3系統(tǒng)功能設(shè)計

進(jìn)行系統(tǒng)設(shè)計時,必須把所要設(shè)計的對象系統(tǒng)和圍繞該對象系統(tǒng)的環(huán)境共同

考慮,前者稱為內(nèi)部系統(tǒng),后者稱為外部系統(tǒng)。內(nèi)部系統(tǒng)包括數(shù)據(jù)采集和用戶管

理。外部系統(tǒng)包括數(shù)據(jù)可視化展示和模型訓(xùn)練。可視化系統(tǒng)的功能結(jié)構(gòu)圖如圖3-2

所示:

11

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計

圖3-2可視化系統(tǒng)功能結(jié)構(gòu)圖

3.3.1數(shù)據(jù)采集功能設(shè)計

本網(wǎng)站系統(tǒng)基于百度飛漿EasyDL定制模型進(jìn)行數(shù)據(jù)展示。針對不同工業(yè)生

產(chǎn)部件可通過外部鏈接跳轉(zhuǎn)進(jìn)行個性化模型定制后,將訓(xùn)練完成的模型下載到本

地,使用端口ip/端口:/24401,如圖3-3所示。啟動服務(wù)后即可進(jìn)行芯

片模型數(shù)據(jù)采集。

圖3-3模型訓(xùn)練功能模塊端口設(shè)置圖

針對系統(tǒng)數(shù)據(jù)采集功能結(jié)構(gòu)圖進(jìn)行進(jìn)一步細(xì)化分析,得到各子模塊相關(guān)功能

描述,功能描述使用功能流程圖描述,如下圖3-4所示:

12

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計

圖3-4數(shù)據(jù)采集功能模塊流程圖

數(shù)據(jù)采集功能模塊相關(guān)功能文字描述:對EasyDL模型檢測后的芯片數(shù)據(jù)進(jìn)

行采集。為防止模型檢測平臺版本升級,過程中可能導(dǎo)致的檢測空擋,數(shù)據(jù)值不

存在的問題,將采集數(shù)據(jù)賦值為空字符,以確保采集模塊的正常運行。

3.3.2用戶登入功能設(shè)計

用戶登入功能包括用戶注冊和登錄。

注冊功能將前端工號和電話號碼信息輸入框以及密碼設(shè)置傳入系統(tǒng),對數(shù)據(jù)

庫中工號進(jìn)行匹配,不存在該工號信息則存儲到數(shù)據(jù)庫中,否則提示該工號已存

在。流程如圖3-5所示:

圖3-5用戶管理功能模塊注冊流程圖

13

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計

登錄功能通過工號信息在數(shù)據(jù)庫中匹配相應(yīng)的注冊信息,核對是否存在該工

號用戶,以及密碼是否一致來確保登錄功能正常運行,保護(hù)網(wǎng)站可視化數(shù)據(jù)。流

程如圖3-6所示:

圖3-6用戶管理功能模塊登錄流程圖

3.3.3數(shù)據(jù)可視化功能設(shè)計

芯片數(shù)據(jù)可視化展示包括芯片合格率、芯片合格數(shù)量、質(zhì)檢Confidence以

及質(zhì)檢Score四個模塊展示。針對企業(yè)用戶和游客用戶的不同請求,調(diào)用后臺數(shù)

據(jù)庫中的不同信息進(jìn)行數(shù)據(jù)展示。流程如圖3-7所示:

圖3-7可視化展示功能模塊請求流程圖

14

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計

3.4數(shù)據(jù)庫設(shè)計

根據(jù)需求和目標(biāo),設(shè)計出適合特定應(yīng)用的數(shù)據(jù)庫結(jié)構(gòu)和組織方式,以及數(shù)據(jù)

存儲、管理和檢索的規(guī)則和方法,使得數(shù)據(jù)能夠高效、準(zhǔn)確地存儲和檢索,從而

滿足系統(tǒng)的業(yè)務(wù)需求。

3.4.1設(shè)計原則

為取得較好的設(shè)計效果,進(jìn)行數(shù)據(jù)庫設(shè)計需要遵從以下原則:

(1)把具有同一個主題的數(shù)據(jù)存儲在一個數(shù)據(jù)表中,“一表一用”。

(2)盡量消除冗余,提高訪問數(shù)據(jù)庫的速度。

(3)一般要求數(shù)據(jù)庫設(shè)計達(dá)到第三范式,多對多,最大限度消除了數(shù)據(jù)冗

余、修改異常、插入異常、刪除異常,基本滿足關(guān)系規(guī)范化的要求。

(4)關(guān)系數(shù)據(jù)庫中,各個數(shù)據(jù)表之間關(guān)系只能為一對一和一對多的關(guān)系。

對于多對多的關(guān)系必須轉(zhuǎn)換為一對多的關(guān)系來處理。

(5)設(shè)計數(shù)據(jù)表結(jié)構(gòu)時,應(yīng)考慮表結(jié)構(gòu)的動態(tài)適應(yīng)性。

3.4.2概念設(shè)計

概念結(jié)構(gòu)設(shè)計是整個數(shù)據(jù)庫設(shè)計的關(guān)鍵,它通過對用戶需求進(jìn)行綜合,歸納

與抽象,形成了一個獨立于具體DBMS的概念模型。在數(shù)據(jù)庫概念設(shè)計的過程

中,采用E-R圖來描述概念設(shè)計的結(jié)果,其E-R圖如下圖3-8、3-9所示:

圖3-8芯片數(shù)據(jù)E-R圖

15

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計

圖3-9企業(yè)用戶E-R圖

3.4.3邏輯設(shè)計

邏輯結(jié)構(gòu)設(shè)計是將概念結(jié)構(gòu)轉(zhuǎn)換為某個DBMS所支持的數(shù)據(jù)模型,并將進(jìn)

行優(yōu)化。針對ER模型,通過數(shù)據(jù)實體屬性、實體間關(guān)系的全面分析,結(jié)合圖3-8

芯片數(shù)據(jù)E-R圖和圖3-9企業(yè)用戶E-R系統(tǒng)的實際需求,轉(zhuǎn)化為關(guān)系模式,建立

起了本系統(tǒng)的關(guān)系模式,具體轉(zhuǎn)化后的關(guān)系模式如下:

chipinfo表(id、name、score、trackId、x1、x2、y1、y2、modelKind、

location_width、location_top、location_left、location_height、label、index、

frame、confidence)

uesr表(工號、密碼、電話號碼)

4系統(tǒng)功能設(shè)計與實現(xiàn)

根據(jù)用戶需求分析、系統(tǒng)框架設(shè)計、系統(tǒng)功能設(shè)計以及數(shù)據(jù)庫設(shè)計,進(jìn)行系

統(tǒng)各功能模塊的設(shè)計與實現(xiàn)。包括數(shù)據(jù)采集、用戶登入、數(shù)據(jù)可視化。

4.1數(shù)據(jù)采集子模塊實現(xiàn)

4.1.1數(shù)據(jù)采集模塊設(shè)計

對芯片進(jìn)行批量檢測,通過調(diào)用EasyDL模型檢測芯片,對數(shù)據(jù)進(jìn)行采集并

存入數(shù)據(jù)庫中。流程如圖4-1所示:

16

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計

圖4-1數(shù)據(jù)采集流程圖

4.1.2數(shù)據(jù)采集模塊核心代碼實現(xiàn)

步驟1:將芯片圖片上傳到EasyDL模型中。

defscannerFile(url):

files=os.listdir(url)

forfinfiles:

real_path=os.path.join(url,f)

ifos.path.isfile(real_path):

mid=os.path.abspath(real_path)

result.append(getByte(mid))

print(mid)

elifos.path.isdir(real_path):

scannerFile(real_path)

defgetByte(path):

withopen(path,'rb')asf:

img_byte=f.read()

returnimg_byte

步驟2:將芯片質(zhì)檢數(shù)據(jù)采集存入數(shù)據(jù)庫中。

defstorage():

17

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計

fordatainresult:

content=requests.post(':24401/',params={"threshold":0.5},

data=data).json()

try:

location_height=content['results'][0]['location_height'],

location_left=content['results'][0]['location_left'],

location_top=content['results'][0]['location_top'],

location_width=content['results'][0]['location_width'],

x1=content['results'][0]['x1'],

x2=content['results'][0]['x2'],

y1=content['results'][0]['y1'],

y2=content['results'][0]['y2']

except:

location_height,location_left,location_top,location_width='','','',''

x1,x2,y1,y2='','','',''

try:

data_result=ChipInfo(

confidence=content['results'][0]['confidence'],#

frame=content['results'][0]['frame'],#

index=content['results'][0]['index'],#

label=content['results'][0]['label'],#

modelKind=content['results'][0]['modelKind'],#

name=content['results'][0]['name'],#

score=content['results'][0]['score'],#

trackId=content['results'][0]['trackId'],#

location_height=location_height,

location_left=location_left,

location_top=location_top,

location_width=location_width,

x1=x1,

x2=x2,

y1=y1,

y2=y2

)

except:

pass

data_result.save()

4.2用戶登入子模塊實現(xiàn)

用戶登入界面,如圖4-2所示:該界面主要包括一個用戶登入和一個用戶注

冊接口。

18

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計

圖4-2用戶登入界面圖

4.2.1用戶登錄界面設(shè)計

用戶登入如圖4-1所示:用戶在確認(rèn)自己是已經(jīng)成為用戶時,通過輸入工號

和密碼,系統(tǒng)會進(jìn)行工號匹配和密碼驗證,如果該工號通過驗證就可以進(jìn)入數(shù)據(jù)

可視化界面,沒有通過驗證就只能有瀏覽權(quán)限,沒有其他權(quán)限。或選擇游客用戶

模式。通過用戶驗證后會向系統(tǒng)發(fā)送界面跳轉(zhuǎn)請求,以及對應(yīng)權(quán)限的數(shù)據(jù)可視化

圖表展示請求。

4.2.2用戶登錄界面核心代碼實現(xiàn):

步驟1:跳轉(zhuǎn)用戶登錄界面。

path(r'login/',views.login),

步驟2:驗證用戶登錄。

deflogin(request):

ifrequest.method=='POST':

job=request.POST['jobNumber']

password=request.POST['password']

ifUser.objects.filter(jobNumber=job):

user=User.objects.filter(jobNumber=job)

ifuser:

ifuser.values()[0].get('password')==password:

msg='登錄成功'

messages.error(request,msg)

19

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計

returnredirect("/visual/index/")

else:

msg='用戶名密碼錯誤'

else:

msg='用戶名不存在'

messages.error(request,msg)

returnrender(request,"login.html",locals())

步驟3:發(fā)送芯片合格率、芯片合格數(shù)量、質(zhì)檢Confidence以及質(zhì)檢Score

可視化圖表請求。

classIndexView(APIView):

defget(self,request,*args,**kwargs):

#subprocess.Popen('scrapycrawleasydl')#Scrapy爬蟲

scannerFile("./Picture")

returnHttpResponse(content=open(r'./templates/index.html').read())

4.2.3用戶注冊界面設(shè)計

用戶注冊如圖4-3所示:任何用戶都可以注冊成為本系統(tǒng)的會員,該模塊就

是提供用戶注冊的平臺,用戶通過提交注冊信息(關(guān)鍵字:工號,密碼,手機號

碼),系統(tǒng)將與已注冊的工號相匹配,未注冊則將用戶提交的注冊信息存入數(shù)據(jù)

庫。

20

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計

圖4-3用戶注冊界面圖

4.2.4用戶注冊界面核心代碼實現(xiàn):

步驟1:跳轉(zhuǎn)用戶注冊界面。

path(r'register/',views.register),

步驟2:用戶注冊。

defregister(request):

ifrequest.method=='POST':

job=request.POST['jobNumber']

password=request.POST['password']

phone=request.POST['phoneNumber']

ifUser.objects.filter(jobNumber=job):

msg='該工號用戶已存在'

messages.error(request,msg)

else:

data_result=User(

jobNumber=job,

password=password,

phoneNumber=phone,

)

data_result.save()

msg='注冊成功'

messages.error(request,msg)

returnredirect('/visual/login/')

returnrender(request,'register.html',locals())

4.3數(shù)據(jù)可視化子模塊實現(xiàn)

對芯片數(shù)據(jù)展示包括:芯片合格率、芯片合格數(shù)量、質(zhì)檢Confidence以及

質(zhì)檢Score四個模塊。

4.3.1芯片合格率可視化模塊界面設(shè)計

針對合格率采用儀表圖進(jìn)行展示。如圖4-5所示:

21

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計

圖4-5儀表圖界面圖

4.3.2芯片合格率可視化模塊核心代碼實現(xiàn)

步驟1:發(fā)送儀表圖請求。

path(r'gauge/',views.ChartView_gauge.as_view(),name='visual'),

步驟2:調(diào)用儀表圖。

classChartView_gauge(APIView):

defget(self,request,*args,**kwargs):

returnJsonResponse(json.loads(gauge()))

步驟3:實現(xiàn)儀表圖。

defgauge()->Gauge:

a,g=top()

c=(

Gauge()

.add('芯片合格率',[('',round(g/a*100,3))],title_label_opts=opts.LabelOpts(

font_size=40,color='blue',font_family='MicrosoftYaHei'

),)

.set_global_opts(

title_opts=opts.TitleOpts(title='批量芯片質(zhì)量分析',subtitle=('%s批次'%

now_time)),

toolbox_opts=opts.ToolboxOpts(),

legend_opts=opts.LegendOpts(is_show=True),

)

.dump_options_with_quotes()

)

returnc

4.3.3芯片合格數(shù)量可視化模塊界面設(shè)計

針對合格數(shù)量采用柱狀圖進(jìn)行展示。如圖4-6所示:

22

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計

圖4-6柱狀圖界面圖

4.3.4芯片合格數(shù)量可視化模塊核心代碼實現(xiàn)

步驟1:發(fā)送柱狀圖請求。

path(r'bar/',views.ChartView_bar.as_view(),name='visual'),

步驟2:調(diào)用柱狀圖。

classChartView_bar(APIView):

defget(self,request,*args,**kwargs):

returnJsonResponse(json.loads(bar()))

步驟3:實現(xiàn)柱狀圖。

defbar()->Bar:

a,g=top()

c=(

Bar()

.add_xaxis(['合格','不合格'])

.add_yaxis('芯片數(shù)量',[g,a-g])

.set_global_opts(title_opts=opts.TitleOpts(title='批量芯片合格數(shù)量',subtitle=('%s

批次'%now_time)))

.dump_options_with_quotes()

)

returnc

4.3.5質(zhì)檢Confidence可視化模塊界面設(shè)計

針對質(zhì)檢Confidence采用折線圖進(jìn)行展示。如圖4-7所示:

23

湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計

圖4-7折線圖界面圖

4.3.6質(zhì)檢Confidence可視化模塊核心代碼實現(xiàn)

步驟1:發(fā)送折線圖請求。

path(r'line/',views.ChartView_line.as_view(),name='visual'),

步驟2:調(diào)用折線圖。

classChartView_line(APIView):

defget(self,request,*args,**kwargs):

returnJsonResponse(json.loads(line()))

步驟3:實現(xiàn)折線圖。

defline()->Line:

x_value,value=confidence()

c=Line()

c=(

c.add_xaxis(x_value)

.add_yaxis('Confidence',value,is_smooth=True,is_selected=True)

.set_global_opts(title_opts=opts.TitleOpts(title='批量芯片質(zhì)檢Confidence分析',

subtitle=('%s批次'%now_time)),

toolbox_opts=opts.TitleOpts(),

legend_opts=opts.LegendOpts(is_show=True),

yaxis_opts=opts.AxisOpts(min_=0.5,max_=1.0),

datazoom_opts=opts.DataZoomOpts(is_show=True,

is_realtime=True),

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論