第一篇:視頻教學(xué)功能設(shè)計
功能設(shè)計 項目名稱:視頻會議 班級:軟件101 組長:趙美婷
組內(nèi)成員:王立芹、夏葉、王亞如、靳會 時間:2012年10月9日引言
1.1編寫目的:
目前,作為新型技術(shù)的視頻會議,已經(jīng)成為開發(fā)和研究的熱點。作為計算機專業(yè)的學(xué)生,也應(yīng)該將視頻會議的學(xué)習和研究列為課程設(shè)計內(nèi)容。1.2背景說明:
視頻會議也叫電視會議,經(jīng)歷了模擬電視會議和數(shù)字電視會議兩個階段。模擬會議電視是早期的會議電視,在70年代就有了這種通信業(yè)務(wù)。當時傳送的是黑白圖像,并且只限于在兩個地點之間舉行會議。盡管如此,電視會議還是要占用很寬的頻帶,費用很高,因此這種電視會議沒有得到發(fā)展。視頻會議進入中國初期,政府是視頻會議市場的最大也是最主要的用戶。近些年來,更多的行業(yè)用戶開始意識到視頻會議的重要性,視頻設(shè)備用戶數(shù)量不斷增加,用戶行業(yè)分布領(lǐng)域也越來越廣泛,由最初的政府和電信部門,發(fā)展到公安、檢察院、法院、銀行、證券、保險、教育、稅務(wù)等各個行業(yè)。和歐美國家相比,雖然中國的遠程教育和遠程醫(yī)療剛剛起步,視頻會議系統(tǒng)在這兩個領(lǐng)域的應(yīng)用范圍還不夠廣泛,但從發(fā)展的角度可以看到,最近兩年,上述兩個領(lǐng)域的應(yīng)用正呈現(xiàn)出蓬勃發(fā)展的勢頭,未來將是快速發(fā)展的行業(yè)。目前,國內(nèi)市場視頻會議主要應(yīng)用于下列行業(yè):政府;金融、證券、銀行;能源;交通、公安軍隊;外資企業(yè)及大型企業(yè);醫(yī)療與教育行業(yè)。隨著政府信息化的不斷深入,以及各地電子政務(wù)的開展,各地黨政專網(wǎng)的二期、三期擴建工程,今后幾年中,對于視頻會議需求最大的還將來自政府部門。由于資金和觀念等因素的影響,視頻會議在教育、醫(yī)療方面的應(yīng)用并沒有取得預(yù)期的效果,各廠商在這兩個領(lǐng)域中的占有率都很有限。但由于視頻會議在技術(shù)上有著明顯的特點和優(yōu)勢,其應(yīng)用價值必將會得到教育界、醫(yī)學(xué)界的進一步承認。中小型企業(yè)應(yīng)是今后著重關(guān)注的領(lǐng)域,這部分用戶數(shù)量巨大,一般對于設(shè)備終端的要求較低,而且連接點數(shù)較少。這就要求廠商能夠提供價格相對低廉的產(chǎn)品、全套的解決方案,以及高質(zhì)量的售后服務(wù),同時,由于這部分潛在用戶數(shù)量巨大,因此廠商和代理商的市場推廣力度應(yīng)該進一步加強。技術(shù)實力差距不大的情況下,價格將成為競爭取勝的一個關(guān)鍵因素。目前國內(nèi)廠商在設(shè)備的價格上具有很大的優(yōu)勢,廠商在推廣時,應(yīng)注意減輕產(chǎn)品價位偏高所帶來的影響??傮w設(shè)計
2.1需求規(guī)定
(1)能夠?qū)崿F(xiàn)音視頻交互。
(2)有良好的帶寬處理機制、有強大網(wǎng)速的適應(yīng)能力。(3)支持多種網(wǎng)絡(luò)環(huán)境,并且跨越各種不同的網(wǎng)絡(luò)環(huán)境。(4)支持文檔共享、電子白板、網(wǎng)頁同步等多種文本交互手段。(5)支持屏幕廣播、程序共享等多種協(xié)同辦公的功能。(6)針對不同的用戶群體、用戶數(shù)量,有相對應(yīng)的會議機制。(7)能同時支持多個會議通道,保障各會議通道的相對獨立和信息安全性。
(8)能進行遠程的web方式管理,組織會議和會議授權(quán)簡單、方便。
(9)有較強的控制功能,能夠把不遵守紀律的會議成員請出會議室。
(10)有豐富的輔助功能,保證在突發(fā)情況下視頻會議能無干擾地正常進行。
(11)能實現(xiàn)無延遲的音視頻傳輸、保證音視頻的同步性。(12)能進行會議錄制,把會議信息完全記錄下來。
(13)有良好的擴展功能,支持服務(wù)器集群、分發(fā)式服務(wù)器和二級服務(wù)器。2.2運行環(huán)境
網(wǎng)絡(luò)視頻會議的進行,必須要有良好的硬件支持。NetMeeting對硬件要求如下: 1.聲卡。最好采用全雙工的聲卡。
2.麥克風。連接在聲卡上或內(nèi)置在計算機中。在語音會議時,應(yīng)對著麥克風說話。3.音箱或耳機。連接在聲卡上或內(nèi)置在計算機,可從其中聽到對方的聲音。4.網(wǎng)卡或調(diào)制解調(diào)器(Modem)。保證能夠接入互聯(lián)網(wǎng)。5.攝像頭。讓對方看到自己的圖像。2.3基本設(shè)計概念和處理流程
一個網(wǎng)絡(luò)視頻系統(tǒng)主要由三大部分組成:一個會議控制中心;接入因特網(wǎng)的多個辦公局域網(wǎng);若干個通過有線或無線方式接入因特網(wǎng)或辦公局域網(wǎng)的用戶終端。
右圖是一款商業(yè)化的網(wǎng)絡(luò)視頻系統(tǒng)——智星網(wǎng)絡(luò)視頻會議系統(tǒng)的實際組成圖
2.4結(jié)構(gòu)
一、音頻的錄制與播放問題
這一部分的開發(fā)相對簡單。其一,這種功能的API從Windows 3.1開始就已經(jīng)提供(winmm.lib+mmsystem.h);其二,如今借助于方便的因特網(wǎng),我們完全可以搜到現(xiàn)成的包裝類。在本文中,我們直接借用了提供了兩個現(xiàn)成的RecordSound與PlaySound類。這兩個類都派生于CWinThread類,用戶可以“死搬硬套”地使用它們。下面代碼展示了這兩個類的使用,具體包裝類定義請參考下載源碼文件。
//創(chuàng)建并啟動錄音線程
record=new RecordSound(this);record->CreateThread();//創(chuàng)建并啟動播放線程 play=new PlaySound1(this);play->CreateThread();//開始錄制
record->PostThreadMessage(WM_RECORDSOUND_STARTRECORDING,0,0);//開始播放
play->PostThreadMessage(WM_PLAYSOUND_STARTPLAYING,0,0);//在音頻錄制期間,我們可以在RecordSound類的OnSoundData //回調(diào)函數(shù)中使用這些數(shù)據(jù)。在此,你可以放置你要發(fā)送到遠程宿主的數(shù)據(jù)…… //播放接收自遠程宿主的音頻數(shù)據(jù)
play->PostThreadMessage(WM_PLAYSOUND_PLAYBLOCK,size,(LPARAM)data);//停止錄制
record->PostThreadMessage(WM_RECORDSOUND_STOPRECORDING,0,0);//停止播放
play->PostThreadMessage(WM_PLAYSOUND_STOPPLAYING,0,0);//最后,停止錄音線程
record->PostThreadMessage(WM_RECORDSOUND_ENDTHREAD,0,0);//停止播放線程
play->PostThreadMessage(WM_PLAYSOUND_ENDTHREAD,0,0);上面已經(jīng)加了注釋,使用方法一目了然。
二、視頻捕獲的問題
當前,在Windows平臺下開發(fā)視頻應(yīng)用一般采用兩種方案。一種是基于視頻采集卡所附帶的二次軟件開發(fā)包SDK進行。此方式的優(yōu)點:幫助資料齊全,直接套用現(xiàn)成的API,易于上手;但缺點也是明顯的:硬件依賴性強,缺乏應(yīng)有的靈活性,因此,不能充分滿足開發(fā)通用的視頻應(yīng)用的需要。
另一種方案是基于微軟公司的VFW(Video for Windows)進行。這個SDK為開發(fā)Windows平臺下的視頻應(yīng)用程序提供也現(xiàn)成的軟件工具包(一組API),開發(fā)人員可以通過它們很方便地實現(xiàn)視頻捕獲、視頻編輯及視頻播放功能,特別是可利用其中內(nèi)置的回調(diào)函數(shù)開發(fā)出更為復(fù)雜的視頻應(yīng)用程序。因此,這種方案的優(yōu)點是播放視頻時不需要專用的硬件設(shè)備(大多數(shù)的視頻采集卡驅(qū)動程序都支持VFW接口),應(yīng)用靈活,可以滿足視頻應(yīng)用程序開發(fā)的需要。值得慶幸的是,如今的Windows版本都內(nèi)置安裝了VFW相關(guān)組件,而VC++自4.0以來就支持VFW,從而大大簡化了視頻應(yīng)用程序的開發(fā)。目前,基于PC的多媒體應(yīng)用程序的視頻部分,大都是利用VFW API開發(fā)的。
VFW以消息驅(qū)動方式實現(xiàn)對視頻設(shè)備進行訪問,便于開發(fā)者控制設(shè)備數(shù)據(jù)流的工作過程。簡言之,這個框架主要包括VICAP.DLL、MSVIDEO.DLL、MCIAVI.DRV、AVIFILE.DLL、ICM、ACM等多個動態(tài)連接庫,這些組件協(xié)同合作,共同完成視頻的捕獲、視頻壓縮及播放功能。有關(guān)這些模塊的具體介紹見MSDN,在此略過。
(一)視頻捕獲
視頻數(shù)據(jù)的實時采集,主要通過AVICAP模塊中的消息、宏函數(shù)、結(jié)構(gòu)以及回調(diào)函數(shù)來完成。視頻捕獲的大致過程如下:(1)建立捕獲窗口
利用函數(shù)capCreateCaptureWindow()建立視頻捕獲窗口,它是所有捕獲工作及設(shè)置的基礎(chǔ)。其主要功能包括:①動態(tài)地同視頻和音頻輸入器連接或斷開;②設(shè)置視頻捕獲速率;③提供視頻源、視頻格式以及是否采用視頻壓縮的對話框;④設(shè)置視頻采集的顯示模式為Overlay或為Preview;⑤實時獲取每一幀視頻數(shù)據(jù);⑥將一視頻流和音頻流捕獲并保存到一個AVI文件中;⑦捕獲某一幀數(shù)字視頻數(shù)據(jù),并將單幀圖像以DIB格式保存;⑧指定捕獲數(shù)據(jù)的文件名,并能將捕獲的內(nèi)容拷貝到另一文件。(2)登記回調(diào)函數(shù)
登記回調(diào)函數(shù)用來實現(xiàn)用戶的一些特殊需要。在以一些實時監(jiān)控系統(tǒng)或視頻會議系統(tǒng)中,需要將數(shù)據(jù)流在寫入磁盤以前就必須加以處理,達到實時功效。應(yīng)用程序可用捕獲窗來登記回調(diào)函數(shù),以便及時處理以下情況:捕獲窗狀態(tài)改變、出錯、使用視頻或音頻緩存、放棄控制權(quán)等,相應(yīng)的回調(diào)函數(shù)分別為capStatusCallback(),capErrorCallback(),capVideoStreamCallback(),capWaveStreamCallback(),capYieldCallback()。(3)獲取捕獲窗口的缺省設(shè)置
通過宏capCaptureGetSetup(hWndCap,&m_Parms,sizeof(m_Parms))來完成。(4)設(shè)置捕獲窗口的相關(guān)參數(shù)
通過宏capCaptureSetSetup(hWndCap,&m_Parms,sizeof(m_Parms))來完成。(5)連接捕獲窗口與視頻捕獲卡
通過宏capDriveConnect(hWndCap,0)來完成。(6)獲取采集設(shè)備的功能和狀態(tài)
通過宏capDriverGetCaps(hWndCap,&m_CapDrvCap,sizeof(CAPDRIVERCAPS))來獲取視頻設(shè)備的能力,通過宏capGetStatus(hWndCap,&m_CapStatus,sizeof(m_CapStatus))來獲取視頻設(shè)備的狀態(tài)。(7)設(shè)置捕獲窗口顯示模式
視頻顯示有Overlay(疊加)和Preview(預(yù)覽)兩種模式。在疊加模式下,捕獲視頻數(shù)據(jù)布展系統(tǒng)資源,顯示速度快,視頻采集格式為YUV格式,可通過capOverlay(hWndCap,TRUE)來設(shè)置;預(yù)覽模式下要占用系統(tǒng)資源,視頻由系統(tǒng)調(diào)用GDI函數(shù)在捕獲窗顯示,顯示速度慢,它支持RGB視頻格式。
(8)捕獲圖像到緩存或文件并作相應(yīng)處理
若要對采集數(shù)據(jù)進行實時處理,則應(yīng)利用回調(diào)機制,由capSetCallbackOnFrame(hWndCap,FrameCallbackProc)
完
成單
幀
視
頻
采
集;
由capSetCallbackOnVideoStream(hWndCap,VideoCallbackProc)完成視頻流采集。如果要保存采集數(shù)據(jù),則可調(diào)用capCaptureSequence(hWnd);要指定文件名,可調(diào)用capFileSetCapture(hwnd,Filename)。(9)終止視頻捕獲斷開與視頻采集設(shè)備的連接
調(diào)用capCatureStop(hWndCap)停止采集,調(diào)用capDriverDisconnect(hWndCap),斷開視頻窗口與捕獲驅(qū)動程序的連接。由于上面這些API密切相關(guān),所以為了使用方便,我們干脆把它們打包到一個視頻捕獲類VideoCapture中。
下面的代碼片斷展示了這個類的使用思路: //創(chuàng)建視頻捕獲類的實例 vidcap=new VideoCapture();//當幀捕獲完成時,下面這一句將用于調(diào)用主對話框類的顯示函數(shù) vidcap->SetDialog(this);//下一行完成初始化工作:連接到驅(qū)動程序;設(shè)置使用的視頻格式等。//如果成功地連接到視頻捕獲設(shè)備返回TRUE。vidcap-> Initialize();//如果連接成功,那么,我們就可以得到與視頻格式相關(guān)的BITMAPINFO //結(jié)構(gòu)。后面將用之顯示捕獲的幀 this->m_bmpinfo=&vidcap->m_bmpinfo;//現(xiàn)在,你可以正式開始視頻捕獲了…… vidcap->StartCapture();//一旦捕獲開始,捕獲的幀將到達回調(diào)函數(shù)—VideoCapture類的OnCaptureVideo函數(shù)。//在此回調(diào)函數(shù)中,你可以調(diào)用顯示函數(shù)實現(xiàn)幀顯示(見下一節(jié))//停止捕獲
vidcap->StopCapture();//成功捕獲后,釋放視頻捕獲類 vidcap->Destroy();【注意】為了順利編譯和鏈接,你需要在類實現(xiàn)文件(VideoCapture.cpp)的前面加上如下語句:
#pragma comment(lib,“vfw32”)#pragma comment(lib,“winmm”)
(二)顯示捕獲的視頻幀
對于顯示捕獲的視頻幀方面(也就是顯示圖像的問題),顯然存在多種方案。例如,我們可以使用SetDIBitsToDevice()方法實現(xiàn)直接顯示捕獲的視頻幀。但是,這種方案速度非常慢,因為它是基于圖形設(shè)備接口(GDI)的函數(shù)。相比之下,更好一些的方法是使用DrawDib API來繪制幀,因為這個函數(shù)可以直接寫向視頻內(nèi)存,因此能夠提供更好的性能。下面的代碼片斷展示了如何使用DrawDib函數(shù)顯示捕獲的視頻幀: //初始化DIB以便繪制
HDRAWDIB hdib=::DrawDibOpen();//然后,使用適當?shù)膮?shù)調(diào)用這個函數(shù)…… ::DrawDibBegin(hdib,...);//現(xiàn)在,已經(jīng)作好準備—可以調(diào)用這個函數(shù)進行幀顯示了 ::DrawDibDraw(hdib,...);//最后,結(jié)束幀繪制 ::DrawDibEnd(hdib);::DrawDibClose(hdib);其實,上面代碼非常類似普通位圖繪制過程。
三、選擇適當?shù)木幋a/解碼庫
在本文中,我們選用Roalt Aalmoes的開源的快速H.263編碼器庫。
(一)使用編碼器代碼示例 //初始化壓縮器 CParam cparams;cparams.format = CPARAM_QCIF;InitH263Encoder(&cparams);//如果你需要從RGB24轉(zhuǎn)換到Y(jié)UV420格式,那么應(yīng)該調(diào)用下面的函數(shù) InitLookupTable();//創(chuàng)建回調(diào)函數(shù)
//OwnWriteFunction是編碼期間返回編碼數(shù)據(jù)時調(diào)用的全局函數(shù) WriteByteFunction = OwnWriteFunction;//壓縮數(shù)據(jù)必須使用YUV420格式 //在壓縮之前調(diào)用下面這個方法
ConvertRGB2YUV(IMAGE_WIDTH,IMAGE_HEIGHT,data,yuv);//壓縮幀……
cparams.format=CPARAM_QCIF;cparams.inter = CPARAM_INTRA;cparams.Q_intra = 8;cparams.data=yuv;//數(shù)據(jù)是YUV格式 CompressFrame(&cparams, &bits);//你可以從開始時你已經(jīng)注冊的回調(diào)函數(shù)中取得壓縮的數(shù)據(jù) //最后,終止編碼器 // ExitH263Encoder();
(二)解碼器編程
注意,原始的H.263編碼器庫以C方式進行編碼,而且提供了其它更多的細節(jié)實現(xiàn)。在本文中,我們以C++重新進行了改寫。下面是解碼器的使用示例代碼框架: //初始化解碼器 InitH263Decoder();//解壓幀……
//rgbdata必須足夠大以便存儲輸出數(shù)據(jù); //解碼器以YUV420格式生成圖像數(shù)據(jù); //解碼之后,把它再轉(zhuǎn)換成RGB24格式…… DecompressFrame(data,size,rgbdata,buffersize);//最后一步,終止解碼器 ExitH263Decoder();
四、運行應(yīng)用程序
為了試驗本文示例應(yīng)用程序,應(yīng)該把可執(zhí)行文件復(fù)制到一個LAN中的兩臺不同的機器上;然后,分別運行之。從一臺機器上選擇“連接”菜單項,并在彈出對話框內(nèi)輸入另一臺機器的名字或IP地址,最后點擊“連接”按鈕。此時,在另一臺機器上應(yīng)該彈出一個“接受/拒絕”的對話框窗口,點擊“接受”按鈕。之后,在第一臺機器上將顯示通知對話框。按“OK”即可開始你的視頻會議(聊天……)了。
第二篇:治安視頻監(jiān)控門禁功能設(shè)計一覽2014
治安視頻監(jiān)控門禁功能設(shè)計
治安視頻監(jiān)控門禁項目對視頻聯(lián)動作以下功能設(shè)計:
1.所有的聯(lián)動采用基于TCP/IP的聯(lián)動,后臺管理軟件通過網(wǎng)絡(luò)調(diào)取DVR相關(guān)的圖像,包括實時圖像、實時圖片抓拍、歷史數(shù)據(jù)抓拍等;系統(tǒng)引入“抓拍服務(wù)器”概念,“抓拍服務(wù)器”功能:其協(xié)同管理平臺核心服務(wù)器進行圖像抓拍工作,并存儲于抓拍服務(wù)器硬盤內(nèi),并與相應(yīng)的抓拍事件關(guān)聯(lián),供日后事件追朔提供數(shù)據(jù)支持。2.門禁報警與視頻聯(lián)動,當門點發(fā)生相應(yīng)的事件,如合法刷卡、非法刷卡、出門按鈕按下、暴力入侵等,當事件觸發(fā)時,進行視頻聯(lián)動,對產(chǎn)生事件的區(qū)域相關(guān)聯(lián)的攝像機進行抓拍,抓拍實時圖片及抓拍事件前(不低于3秒)及事件后(不低于10秒)的視頻圖像,并與相應(yīng)的事件綁定,存儲于后臺服務(wù)器,便于快速按事件類型快速檢索。所抓拍的圖片及視頻流不隨DVR的硬盤周期覆蓋而丟失,要求存儲時間不低于一年,作為DVR存儲周期的有效延長及補充。
3.由于視頻門禁項目涉及到的人員數(shù)量龐大,系統(tǒng)能承受使用高峰期人員刷卡響應(yīng)和視頻抓拍的工作狀態(tài),每臺服務(wù)器可承受每秒超過50次的刷卡請求和視頻抓拍的峰值。在至少持續(xù)30分鐘的并以每秒50次刷卡和抓拍(每次刷卡抓拍2張圖片及刷卡前3秒到刷卡后10秒視頻2段),系統(tǒng)不能癱瘓;抓拍圖片的顯示不能有明顯的延遲感(不超過1秒);刷卡開門相應(yīng)時間小于0.2秒;各個工作站操作流暢。4.后臺管理軟件支持門點靈活關(guān)聯(lián)本管理區(qū)域已聯(lián)網(wǎng)DVR的任何通道攝像機。5.后臺管理軟件支持多臺抓拍服務(wù)器協(xié)同工作,可自動均衡負載;即使當其中一臺抓拍服務(wù)器癱瘓時,其它抓拍服務(wù)器自動接管已癱瘓服務(wù)器的負載工作。
DVR前置設(shè)計
視頻門禁項目結(jié)合不同的應(yīng)用,將采用不同的視頻監(jiān)控架構(gòu),對于分散獨棟式樓棟、合圍式大門口、從業(yè)場所大門口等場合采用DVR前置設(shè)計。
所謂的DVR前置是指將DVR放置于現(xiàn)場門點,與門禁控制器(包含匯總式或者主控式)一起安裝、布放,將監(jiān)控區(qū)域的門點攝像機直接通過視頻線纜接入DVR內(nèi),在本地實現(xiàn)編碼及存儲;通過網(wǎng)絡(luò)實現(xiàn)與后臺服務(wù)器管理軟件進行TCP/IP通信。如下圖所示:
DVR前置有以下的優(yōu)點:
1.DVR前置,直接在本地編碼及存儲,效率高、成本低;使用多路DVR可接入多棟樓的視頻,如16路DVR可管理8棟樓(或者8個進出的區(qū)域,每個區(qū)域配置進出各兩個攝像機);
2.DVR前置,DVR直接通過視頻線纜與攝像機相聯(lián),圖像效果受外界其它因素(電磁干擾、圖像傳輸距離等)影響低。
3.DVR前置,如果門禁設(shè)備采用帶視頻信號接入的門禁控制器(門禁設(shè)計部分有相關(guān)介紹),可加強視頻信號防雷保護。
4.DVR前置,DVR對下提供4/8/16路攝像機接入,對上提供1個網(wǎng)絡(luò)口,結(jié)構(gòu)清淅簡潔,易于維護。
5.DVR前置,直接通過網(wǎng)絡(luò)上傳數(shù)據(jù),組網(wǎng)傳輸成本相比其它方式(DVR后置,或者前端采用DVS,后臺IP-SAN存儲)相對低廉。
6.DVR前置,系統(tǒng)上線前的調(diào)測工作量相對比較小,因為采用分散式小區(qū)域單臺DVR調(diào)測,各個攝像機的連線簡明,快速排除故障。DVR前置有以下的缺點:
1.DVR前置需安裝在樓棟/區(qū)域內(nèi),首先安裝位置的環(huán)境(雨淋、日照高溫、高濕、灰塵、雷電,市電電壓波動)對設(shè)備可靠性有影響。
2.其次分散安裝,對于維護不便利,需要對各個設(shè)備的安裝位置進行有效的標注,給維護人員帶來不便。
3.最后分散安裝在公共場所,DVR設(shè)備及DVR內(nèi)的硬盤易成為被盜的對象,圖像數(shù)據(jù)的安全會打折。
DVR后置設(shè)計
視頻門禁項目結(jié)合不同的應(yīng)用,將采用不同的視頻監(jiān)控架構(gòu),對于集中式樓棟、圍合式樓棟間等場合宜采用DVR后置設(shè)計。
所謂的DVR后置是指將前端模擬攝像機,通過遠距離傳輸線纜(如借助光端機遠距離傳輸或視頻線),將視頻信號集中匯聚到一個指定的中心,DVR放置于中心,也稱后置于中心;實現(xiàn)視頻模擬信號在中心進行編碼及存儲;在中心的DVR通過內(nèi)部局域網(wǎng)實現(xiàn)與中心的服務(wù)器管理軟件進行TCP/IP通信。如下圖所示:
DVR后置有以下的優(yōu)點:
1.DVR后置中心,中心一般有人值守,設(shè)備的安全性得到有效保障。
2.DVR后置中心,中心的機房環(huán)境比較好,不受室外環(huán)境影響,設(shè)備工作穩(wěn)定性得到提高。
3.DVR后置中心,設(shè)備維護在集中一個地方,管理便捷。DVR前置有以下的缺點:
1.DVR后置,首先采用遠距離傳輸,增加光端機設(shè)備,相應(yīng)增加傳輸成本,提高項目造價。
2.DVR后置,增加光端機等設(shè)備,增加室外線路維護節(jié)點,需要對各個設(shè)備的安裝位置進行有效的標注,增加故障排除難度。
3.DVR后置,采用光端機,對光端機設(shè)備及光纖線纜的有一定技術(shù)要求,選型及匹配相當關(guān)鍵,不然圖像質(zhì)量不能得到有效保證。
4.DVR后置,線纜匯聚必然容易造成線路混亂,檢測排除故障時間長;系統(tǒng)上線前的調(diào)測工作量大,整體聯(lián)調(diào)時攝像機與中心跨的區(qū)域廣、節(jié)點多,故障排查時間長、難度大。
第三篇:基于UML的功能設(shè)計
內(nèi)蒙古工業(yè)大學(xué)信息工程學(xué)院
實 驗 報 告
課程名稱: UML2面向?qū)ο蠓治雠c設(shè)計 實驗名稱: 基于UML的功能設(shè)計 實驗類型: 驗證性□ 綜合性□ 設(shè)計性□ 實驗室名稱: 班級: 學(xué)號: 姓名:
組別: 同組人:
成績:
實驗日期: 2014.5.21
內(nèi)蒙古工業(yè)大學(xué)信息工程學(xué)院
報告類型: 實驗報告√ 預(yù)習報告□
報告成績: 指導(dǎo)教師審核(簽名): 年 月 日
[實驗名稱]
基于UML的功能設(shè)計 [實驗?zāi)康腯
1、熟練使用Rational rose2003。
2、掌握組件圖的繪制方法。
3、掌握布局圖的繪制方法。
4、雙向工程的實施過程。[實驗環(huán)境] Rational rose2003,Windows 7。
[實驗內(nèi)容] 題目1:選課系統(tǒng)的組件圖設(shè)計
描述:在選課系統(tǒng)中,包括MainProgram類(主程序)、People類、FormObject類、ControlObject類、Student類、Registrar類(管理員)、Course類和DataBase類。People類是Student類和Registrar類的基類,所以Student類和Registrar類依賴People類。FormObject類和ControlObject類都和Course類相關(guān),F(xiàn)ormObject類和ControlObject類依賴Course類,ControlObject類和DataBase類相關(guān),ControlObject類依賴DataBase類。
完成:
1)繪制選課系統(tǒng)的組件圖。題目2:選課系統(tǒng)的布局圖的設(shè)計
描述:服務(wù)器使用了兩臺主機,一臺作為數(shù)據(jù)庫服務(wù)器,使用了Oracle服務(wù)器,另一臺是同一局域網(wǎng)上的機器,作為HTTP服務(wù)器,上面運行了HTTP服務(wù)器進程以及業(yè)務(wù)邏輯,同時連接了打印機。而客戶端則是在因特網(wǎng)上任意具有Web瀏覽功能的機器,客戶端和HTTP服務(wù)器通過因特網(wǎng)連接,從HTTP服務(wù)器獲取信息。完成: 1)繪制選課系統(tǒng)的布局圖。題目3:選課系統(tǒng)的正向工程 描述:見題目1。
完成:
第1頁
內(nèi)蒙古工業(yè)大學(xué)信息工程學(xué)院
1)使用Rose的正向工程,為類People、Student和Registrar生成代碼;
2)使用同樣的方法,為其它類也生成代碼。題目4:選課系統(tǒng)的逆向工程
描述:根據(jù)題目3正向工程執(zhí)行的結(jié)果,在類Student的代碼中增加一個TestOperation的空操作。完成:
1)使用Rose的逆向工程,為Student的代碼建立同步模型。
[實驗提示] 1)組件圖的繪制
(1)打開組件圖窗口
在瀏覽器窗口打開“Component View”文件夾-〉雙擊“Main”圖標。(2)建立新組件
瀏覽器中右鍵單擊“Component View”-〉“New”-〉“Component”建立了新組件;(3)修改組件屬性
右鍵單擊所建立的組件-〉“Open Specification”-〉在“General”選項卡中設(shè)置組件名稱、組件版型和實現(xiàn)的語言。
在“Files”選項卡中-〉列表框中單擊右鍵-〉“Insert File”,建立Main.java文件。(4)組件圖中增加組件 將所建立的組件拖入組件圖即可。
使用上面的方法建立組件,然后打開組件的屬性框,選擇“Realizes”選項卡,右鍵單擊類名,選擇“Assign”,可以建立類和組件之間的關(guān)系。
2)布局圖的繪制
(1)打開布局圖窗口
在瀏覽器中選擇“Deployment View”并雙擊,打開了布局圖窗口。
(2)增加處理器
在布局圖窗口工具欄上選擇“Processor”圖標-〉放置到“布局圖”窗口中。
第2頁
(2)設(shè)置組件和類的關(guān)系
內(nèi)蒙古工業(yè)大學(xué)信息工程學(xué)院
(3)設(shè)置處理器屬性
右鍵單擊新建的處理器-〉“Open Specification”-〉選擇“Detail”選項卡-〉在“Processes”列表框中單擊右鍵-〉“Insert”-〉設(shè)置處理器上運行的進程。
3)正向工程的實現(xiàn)
(1)一般性檢查
“Tools”-〉“Check Model”,如果模型有問題,將在日志窗口中給出。
(2)發(fā)現(xiàn)訪問問題
“Report”-〉“Show Access Violations”,在訪問問題窗口中顯示訪問問題。
(3)語言獨立檢查
假設(shè)使用Java語言,“Tools”-〉“Java”-〉“Syntax Check”。
(4)生成代碼
“Tools”-〉“Java”-〉“Genenate Codes”。
4)逆向工程的實現(xiàn)
“Tools”->“Java”-〉“Reverse Engineer Java…”。
[實驗結(jié)果] 題目1:選課系統(tǒng)的組件圖設(shè)計
選課系統(tǒng)組件圖
題目2:選課系統(tǒng)的布局圖的設(shè)計
第3頁
內(nèi)蒙古工業(yè)大學(xué)信息工程學(xué)院
選課系統(tǒng)布局圖題目3:選課系統(tǒng)的正向工程 1)正向工程生成代碼Registrar.java //Source file: D:xy Registrar.java
public class Registrar extends People {
/**
* @roseuid 51BFDB9802E9
*/
public Registrar()
{
} } 2)正向工程生成代碼People.Java //Source file: D:xy People.java
public class People {
public MainProgram theMainProgram;
/**
* @roseuid 51BFD71203A3
*/
public People()
{
第4頁
內(nèi)蒙古工業(yè)大學(xué)信息工程學(xué)院
} } 3)正向工程生成代碼Student.java //Source file: D:xy Studnet.java
public class Studnet extends People {
/**
* @roseuid 51BFD7570025
*/
public Studnet()
{
} } 4)正向工程生成代碼ControlObject.java //Source file: D:xy ControlObject.java
public class ControlObject {
/**
* @roseuid 51BFDBA103D5
*/
public ControlObject()
{
} } 5)正向工程生成代碼FormObject.java //Source file: D:xy FormObject.java
public class FormObject {
/**
* @roseuid 51BFDBA90119
*/
public FormObject()
{
} }
第5頁
內(nèi)蒙古工業(yè)大學(xué)信息工程學(xué)院
6)正向工程生成代碼MainProgram.java //Source file: D:xy MainProgram.java
public class MainProgram {
public People thePeople;
public Course theCourse;
/**
* @roseuid 51BFD862029F
*/
public MainProgram()
{
} } 題目4:選課系統(tǒng)的逆向工程
Student類圖
[實驗心得] 通過本次實驗,熟悉了如何使用rose繪制UML組件圖與布局圖,了解了組件圖與布局圖的作用,鞏固了相關(guān)的課堂知識,加深了對其的認識。除此之外,還掌握了如何使用rose的正向工程和逆向工程,學(xué)會了通過rose快速生成代碼的方法,極大的方便了以后的編程。同時也為以后的學(xué)習與工作打下了一定的基礎(chǔ)。
第6頁
第四篇:圖書館網(wǎng)站網(wǎng)站功能設(shè)計
圖書館網(wǎng)站網(wǎng)站功能設(shè)計
用戶分類
1.管理員 1).超級管理員平臺設(shè)置: 數(shù)據(jù)庫管理(備份、恢復(fù))公告管理 底部欄目管理(關(guān)于我們、購物指南、配送方式、支付方式)添加管理員 學(xué)校管理: 添加學(xué)校、學(xué)院、班級 商品管理: 商品分類(2 級分類)商品添加 商品查詢(可以按分類查詢和修改商品的庫存、價格等信息)缺貨登記管理(商品添加應(yīng)有圖書名稱、出版社、作者、ISBN,出版時間、版次等信息)(商品價格體系共有三個:進價、定價、小管家價。網(wǎng)站網(wǎng)頁上顯示的是小管家價 和定價,其中小管家價就是本網(wǎng)站的售價,因為網(wǎng)站名叫校園小管家,定價就是圖 書的定價,進價就是圖書的進貨價,在網(wǎng)站后臺添加,不顯示在網(wǎng)頁上,小管家價 與進價之間差價的 30%就是小管家的收益)
訂單管理: 按日期,班級,姓名等查詢訂單信息和處理訂單。會員管理: 普通會員管理(會員的刪除、查看、鎖定)(會員刪除指的是會員畢業(yè)信息將被刪除。會員鎖定指的是租書規(guī)定時 期內(nèi)未還的會員的賬號將被鎖定,將無法進行提交訂單)小管家管理(設(shè)置小管家、解除小管家、提現(xiàn)申請?zhí)幚恚┙y(tǒng)計報表: 銷售明細 租賃明細 可以按照日期、學(xué)校、學(xué)院、班級小管家、會員查詢 2)管理員 學(xué)校管理: 添加學(xué)校、學(xué)院、班級 商品管理: 商品分類(2 級分類)商品添加 商品查詢(可以按分類查詢和修改商品的庫存、價格等信息)缺貨登記管理(商品添加應(yīng)有圖書名稱、出版社、作者、ISBN,出版時間、版次等信息)(商品價格體系共有三個:進價、定價、小管家價。網(wǎng)站網(wǎng)頁上顯示的是小管家價 和定價,其中小管家價就是本網(wǎng)站的售價,因為網(wǎng)站名叫校園小管家,定價就是圖 書的定價,進價就是圖書的進貨價,在網(wǎng)站后臺添加,不顯示在網(wǎng)頁上,小管家價 與進價之間差價的 30%就是小管家的收益)
訂單管理: 按日期,班級,姓名等查詢訂單信息和處理訂單。會員管理: 普通會員管理(會員的刪除、查看、鎖定)(會員刪除指的是會員畢業(yè)信息將被刪除。會員鎖定指的是租書規(guī)定時 期內(nèi)未還的會員的賬號將被鎖定,將無法進行提交訂單)小管家管理:(設(shè)置小管家、解除小管家、提現(xiàn)申請?zhí)幚恚┙y(tǒng)計報表: 銷售明細 租賃明細 可以按照日期、學(xué)校、學(xué)院、班級小管家、會員查詢 2.班級小管家 班級訂單管理:可以對班級內(nèi)成員下單情況進行查看。我的訂單: 我的收益: 余額: 申請?zhí)岈F(xiàn) 缺貨登記: 歷史查詢:會員可以在登陸之后查詢自己的租書和買書的歷史記錄。普通用戶: 我的訂單: 申請成為班級小管家。缺貨登記:
歷史查詢:會員可以在登陸之后查詢自己的租書和買書的歷史記錄。所有用戶和非用戶均可查看全站圖書全部信息。只有注冊用戶可下訂單。非注冊用戶下單時會提示需要注冊。
會員注冊功能 注冊郵箱(必填)創(chuàng)建密碼(必填)真實姓名(必填)性別(必填)學(xué)校、學(xué)院、班級(必填)學(xué)歷(必填)入學(xué)時間(必填)郵箱激活
男、女 管理員后臺添加,會員選擇 專科、本科、管理員后臺添加,會員選擇
歷史查詢功能 描述:會員可以在登陸之后查詢自己的租書和買書的歷史記錄。購物車功能 描述:用戶登陸后,可以在瀏覽圖書時將圖書進行加入購物車,購物車內(nèi)圖書永久存在,不會因為關(guān)閉瀏覽器而消失,用戶可手動刪除和修改數(shù)量。
圖書查詢
描述:搜索圖書,搜索類別包括書名、作者、ISBN。
圖書詳情 描述:顯示有關(guān)該圖書所有已錄入信息,包括租賃價格和新書價格。幫助功能 在網(wǎng)站底欄顯示,類似當當網(wǎng)
分:關(guān)于我們、購物指南、配送方式、支付方式 幫助信息 具體內(nèi)容后臺添加即可 支付 描述:分為貨到付款 和 供)。
支付寶(需自行于支付寶簽約,并提供接口密碼)(待提
貨到付款情況描述: 用戶提交訂單(選擇支付方式:貨到付款)------用戶訂單情況同時提交到班級小管家 和管理員后臺(訂單狀態(tài)顯示為等待買家付款)-------網(wǎng)站發(fā)貨到班級小管家(小管家可先 行墊付或早些收款支付給網(wǎng)站送貨人員,小管家在班級訂單上找到該用戶訂單,并點擊已 收貨和付款----送貨人員返回把貨款交與網(wǎng)站管理人員,并點擊已付款,完成。完成單筆交 易。
第五篇:會員管理系統(tǒng)功能設(shè)計
1.受眾俱樂部系統(tǒng)功能設(shè)計
1.1.1.會員管理模塊
會員管理模塊在線填寫管理員審批會員注冊短信注冊管理員審批是否被推薦是給推薦人增加積分后臺導(dǎo)入否正式會員配置頻率積分記錄配置類型會員分類管理配置地區(qū)會員活動查詢活動記錄貨物記錄配置級別溝通記錄
會員管理模塊實現(xiàn)會員注冊的基礎(chǔ)配置、注冊新會員和會員相關(guān)信息的查詢功能。
會員信息包括:姓名,會員級別,積分,機構(gòu),職務(wù),性別,出生,民族,地址,家庭,興趣愛好,習慣,媒體接觸習慣,備注一,備注二,備注三。(其中一般信息開放給會員可在線修改,特殊信息不允許會員修改)會員注冊:分為在線注冊、短信注冊和后臺導(dǎo)入3種方式。會員分類管理:為會員注冊配置基礎(chǔ)信息,可配置項目包括頻率、類型、地區(qū)和會員級別。
會員活動查詢:可以查詢與會員相關(guān)的積分記錄、活動記錄、貨物記錄和溝通記錄信息。
1.1.2.活動管理模塊
活動管理模塊生成會員積分記錄策劃活動設(shè)定活動相關(guān)信息通知相關(guān)人員參與活動生成會員活動記錄 活動管理管理模塊包括發(fā)起活動、會員參與報名、活動評價、活動展示櫥窗子功能。
活動發(fā)起:系統(tǒng)管理員或活動負責人可以發(fā)起新活動,發(fā)起活動時需要填寫活動名稱、活動分類、負責人、組織人員、組織人員分工、參與客戶、參與人員、開始時間、結(jié)束時間、地點、預(yù)算、貨品、收入信息。
會員報名:會員可以選擇自己感興趣的活動進行報名,在經(jīng)過管理人員審核后即可正式參加活動。
活動評價:活動結(jié)束后會員可以對活動進行情況進行評價,評價內(nèi)容將自動展示在活動項目中。
活動展示櫥窗:每個活動均附帶一個活動櫥窗,會員可以上傳與活動相關(guān)的圖片并可配上文字說明。
活動積分:根據(jù)規(guī)則設(shè)定,會員參與活動可能需要扣除一定額度的積分,同時參與活動也可獲得積分獎勵。
1.1.3.交流管理模塊
會員交流模塊發(fā)送短信開始交流選擇客戶或會員填寫內(nèi)容發(fā)送郵件生成會員交流記錄撥打電話 交流管理模塊實現(xiàn)俱樂部與客戶、會員和其他受眾之間的短信、電話、郵件方式進行交流溝通、意見反饋。
會員交流:在會員交流模塊,系統(tǒng)管理員和會員之間可以相互發(fā)起交流,在交流發(fā)起之后可以在每條交流后面進行跟進交流。
會員交流記錄:每項交流情況都會被系統(tǒng)自動記錄,系統(tǒng)管理員或活動相關(guān)人員可以根據(jù)會員、日期、和關(guān)鍵字查詢相關(guān)交流記錄。
1.1.4.積分管理模塊
積分管理模塊會員管理模塊活動管理模塊積分接口積分增減貨物管理模塊 積分管理模塊實現(xiàn)與積分相關(guān)的設(shè)置和記錄查詢,會員管理模塊、活動管理模塊、貨物管理模塊通過積分管理模塊提供的接口實現(xiàn)與積分管理模塊對接。
積分設(shè)置:對站內(nèi)所有能獲得積分的操作和規(guī)則進行統(tǒng)一管理,設(shè)定每項規(guī)則的積分數(shù)、規(guī)則有效期、是否有效。積分查詢:查詢會員獲取或消費積分的詳細記錄。
積分接口:會員管理模塊、活動管理模塊、貨物管理模塊通過接口實現(xiàn)將相關(guān)的積分獲取和消費記錄發(fā)送給積分管理模塊,然后由積分管理模塊實現(xiàn)積分的增減。
1.1.5.貨物管理模塊
貨物管理模塊商品管理采購管理銷售管理貨物管理模塊支付管理發(fā)貨管理退貨管理
貨物管理模塊實現(xiàn)俱樂部經(jīng)營貨物的商品管理、采購管理、銷售管理、支付管理、發(fā)貨管理和退貨管理。同時,貨物管理模塊通過接口與會員管理和活動管理實現(xiàn)對接,會員和活動商品發(fā)放后,商品管理自動更新信息。1.1.6.系統(tǒng)管理模塊
系統(tǒng)管理模塊基礎(chǔ)配置用戶管理系統(tǒng)管理模塊角色管理權(quán)限管理
系統(tǒng)管理模塊為管理員提供系統(tǒng)的基礎(chǔ)配置功能、用戶管理、角色管理、權(quán)限管理。