簡介 圖文資料庫是伴隨多媒體技術而產生的新型資料庫形式,它的主要特點是在資料庫系統中能夠同時管理文字和圖像信息。與傳統的資料庫一樣,圖文資料庫能夠利用資料庫信息產生的像直方圖、圓餅圖一類的圖形。但圖文資料庫對圖像信息管理是指對圖片或圖像檔案的管理。這是它對傳統資料庫管理系統的功能的擴充。圖文資料庫特別適合用作人事檔案管理、罪犯管理、車輛管理、文物資料管理等需要對圖片進行管理的系統。圖文資料庫在對圖像實施管理的關鍵是把記錄中的圖像檔案顯示在計算機的螢幕上。
引言 管理信息系統(MIS>是計算機發展的一個重要套用方向。資料庫技術是信息系統的核心,隨著計算機技術突飛猛進的發展,資料庫套用已從傳統的事務處理擴展到現代的事務處理、caD等多種新的套用領域及管理內容上這些領域和內容要求處理的數據不僅包括整型、實型、字元串、布爾量等常規信息,也包含聲音、圖形、圖像等多媒體信息傳統的DBM S中的數據模型在處理常規的數據模型中是十分有效而科學的,為管理信息系統的發展起到了決定性的作用。然而,傳統的數據模型在處理複雜對象時顯得極不適應,甚至無能為力。傳統的DBM S都只提供了一個可以存儲變長字元串的特性,多媒體信息只能通過變長字元串來存儲,而其處理則由用戶自己編制應用程式來解冼
VDDBMS(Vehicles and Drivers DataBase Manage即s tem)是為公安系統研製開發的大型圖文管理信息系統它不但要處理常規的文本信息,如駕駛員、機動車輛檔案文字內容業務信息等,還要存儲和處理圖像信息,如駕駛員照片、機動車輛照片等為此,我們對現有的關係資料庫功能進行了擴充,實現了複雜對象信息與常規信息的邏輯級緊密禍合,能一體化描述、存儲、檢索和編輯各種信息本文主要介紹建立一個含有龐大圖像數據的實際系統中必須解決的三個關鍵問題:圖像檔案組織和管理問題;圖像信息與文本信息的有機連線問題和資料庫設計問題。
圖像檔案的組織和管理 在一般的圖文
資料庫系統 中,一幅圖像數據往往被處理成單個某種
格式 (如TIF,PCX等)的圖像檔案這樣對一個存在成千上萬幅圖像數據的系統來說,僅僅管理如此龐大數據的檔案名稱所需的系統開銷就已經使系統無法真正運行了。解決這個問題的一般方法就是要建立一個圖像庫系統,象文本資料庫系統管理文本信息那樣管理圖像信息每幅圖像都被當做圖像庫中的一個記錄,可以被增加、刪除、修改查詢、顯示和列印等。
在設計的圖文資料庫系統中,首先應考慮的問題是圖像檔案的組織把一幅幅圖像組織存儲在一個檔案中,建立的圖像庫結構圖如圖1。
圖像庫結構圖 圖像庫依賴於資料庫的產生而產主對圖像庫可以實現圖像的增加、刪除、修改、查詢和顯示。
在圖像庫中,檔案頭信息包括檔案的類型標識、該檔案中所含圖像數量、每個圖像的大小、起始地址以及索引信息等檔案後面存放的就是一幅幅圖像數據。
考慮到掃描的圖像數據都要占用較大的存儲空間(一幅一寸的照片大小的圖像經過掃描、編輯得到一個Pcx格式的圖像數據,一般都是40kB左右,經過壓縮為10kB左右飛如果把一萬個圖像數據存放在一個庫中,一方面庫的容量太大(約100多兆),這樣大的庫檔案不論是管理還是索引都是費時的,還可能造成系統對檔案的破壞為此,適當減少圖像庫的容量,增加庫檔案的個數對系統的套用起到了很好的作用。圖像庫多級管理如圖2。
圖像庫的二級組織管理 圖中圖像分級庫中包含圖像的分類信息操作時,先在圖像分級庫根據所給的分類屬性找到對應的分類圖像庫,然後進行圖像數據的操悵
圖像數據與文本數據的邏輯連線 VDDBMS是圖文信息的管理系統,圖像庫必須與文本資料庫建立起有機聯繫,才會充分發揮它的作用。
在圖像庫中,一幅圖像數據已不再是獨立的一個檔案了,而是圖像庫中的一個“記錄”圖像庫與文本資料庫的連線,就變成兩個不同類型的庫記錄之間的連線,它們之間的連線依靠定義相同的“關鍵字”。從邏輯上講,在記錄一級依靠關鍵字對圖像記錄和文本數據記錄進行同步的操悵圖像記錄與文本數據記錄之間的聯繫如圖3在庫一級的圖像與文本數據的邏輯將在下面談到。
資料庫設計 資料庫設計是管理信息系統開發中的重點在過去的設計中,人們往往注重管理和處理方法,特別是用戶以用戶的觀點所考慮的問題這樣做的結果是資料庫服從算法,處理功能需要什麼庫檔案,就設定一個相應的檔案這樣做對編程起到了方便作用,但給系統也埋下了隱患。存在數據輸入十分雜亂,不能保持唯一來源,資料庫無一致性可言,操作維護極不方便,數據的共享困難等缺點。
我們在設計VDDBMS系統過程中,用以數據為中心的開發方法,對過去的人工系系統庫的結構中心,把圖像數據和文本數據有機地聯繫在一起通過關鍵字指針的移動,帶動文本信息和圖像信息的移魂文本資料庫和圖像數據之間的聯繫是雙向的,即可以通過文本數據尋找對應的圖像,也可以從圖像查找對應的檔案數據,保證了兩類數據的統一操悵
現狀 VDDBMS已正式投入使用,完成了三萬多
駕駛員 的文本檔案和圖像數據的錄入,兩萬多機動車輛的各項數據的錄入整個系統統做了充分的分析,抽象出各種實體,聯繫。經過規範化要求,設計了系統的資料庫在根據用戶要求所做的各項改動中,
數據結構 始終是穩定的。
在資料庫總體構思上,圖文共管是系統設計的關鍵如何把文本資料庫和圖像資料庫有機聯繫到一起,除了要有很好的操作界面,還要有合理的內部機制,總體設計如圖4所示。
在邏輯結構上設計了關鍵字型檔,它成為建立在網路環境基礎上系統不論是操作界面,還是查詢速度等方面都滿足了用戶要求這關鍵是圖文資料庫設計中解決了以上幾個問題文中所討論的問題對今後設計管理信息系統很有借鑑意義。
在FoxPro中實現圖像顯示的原理和方法 實現圖文資料庫管理的關鍵是把資料庫的記錄中所指的圖像顯示在計算機的螢幕上。這裡將分別介紹在
FoxPro 2.5 for MS-DOS和
FoxPro 2.5 for Windows兩個系統顯示圖像檔案的方法。
FoxPro 2.5 for MS-DOS系統 眾所周知,FoxPro 2.5 for
MS-DOS 中並無直接顯示圖像的功能。為實現圖像的顯示,就必須在
FoxPro 2.5For MS-DOS中運行其他軟體或命令來完成這一功能。
例如,使用Blackhask Data Corp的數據圖形工具箱Database Graph Toolkit(DGT)來顯示圖像檔案。不過,根據筆者程式設計的經驗,直接使用
UCDOS 所提供的特殊顯示功能是更為簡單實用的方法。因此,對於前者只作簡單說明,後者給予重點介紹。
(1)使用工具箱DGT和EXHIBIT函式實現圖像顯示。其原理是把DGT用作API庫,安裝時給出命令:
SET LIBRARY TO DGT然後調用DGT的EXHIBIT函式顯示圖像,例如:
=EXHIBIT("/t:3 "+photo. giP')
這個例子是使用DGT的EXHIBIT函式將圖像photo.gif顯示3秒鐘時間。
DGT提供了其他的選項來控制圖像的尺寸、色彩、掃調特徵及其它特性,此處不進一步說明。
(2)使用漢字系統UCDOS 3.1的特殊顯示功能實現圖像顯示。 UCDOS 3.1特殊顯示功能是其主要特色之一。只要運行在UCDOS 3.1下,就可在FoxPro 2.5 forMS-DOS中方便地實現對該功能的調用。這樣就很容易地在資料庫系統中實現顯示各種不同大小的矢量漢字、顯示圖像等眾多的功能。
在實際套用中注意,使用特殊顯示功能前必須運行UCDOS 3.1的列印字型檔讀取程式(RDSL.COM)和特殊顯示模組(TX.COM),
調用特殊顯示功能的原理是,調用顯示中斷((INT10H),當中斷((INT lOH)顯示一特殊的命令字元串時,被顯示的字元串不會直接在螢幕上顯示出來,而被作為命令產生了其他一些現象,如顯示了一個特大的漢字、在螢幕上畫了一個圓等,這樣便實現了特殊顯示功能。由於FoxProFox 2.5 for MS-DOS的顯示命令可實現調用INT lOH,所以實現特殊顯示的工作便是將要使用的功能翻譯為字元串.然後兩頭加上引導字元即可。
UCDOS 3.1提供的特殊顯示控制命令的格式如下:
<命令起始標誌>十<命令串及參數>+<命令結束標誌>
這裡<命令起始標誌>由兩個字元組成,它們是CHR(14)和“[",<命令結束標誌>是“]"。 CHR(14)是ASCII碼為14的字元。
通過列印方式使用特殊顯示功能的命令格式也完全相同,只是必須注意控制序列應送往3號列印口列印,也即DOS定義的設備檔案ipt3o
下面是在FoxPro 2.5 for MS-DOS中調用UCDOS3.1特殊顯示功能的語句表現形式:
①以預設方式調用UCDOS3.1特殊顯示功能:
(@ 0,0 SAY chr(14)+'[命令串及參數]‘
②通過列印口3調用UCDOS3.1特殊顯示功能的方法:
SET PRINT TO LPT3
SET DEVI TO PRINT
@ 0.0 SAY chr(14)+'[命令串及參數]’
SET DEV1 TO SORE
SET PRINT TO PRN
在UCDOS 3.1特殊顯示實現顯示PCX圖像的命令及參數如下:
REx,y,f
這裡,lx,y)=左上角坐標,f=檔案名稱(以$結尾)
在UCDOS 3.1特殊顯示實現顯示部件PCX圖像的命令及參數如下:
RPx,y,w,h,f
其中、w=寬度,h二高度,其餘參數同上。
在實際使用時,還常常會用到一個與顯示圖像有關的"16種基本顏色保護“特顯命令:
PPn
在該命令中.n=1表示保護16種基本顏色的調用板,n=0表示不作保護。
有關使用漢字系統UCDOS 3.1的特殊顯示功能實現圖像顯示.我們將在程式示例中通過實例得以體會。
FoxPro 2.5 for Windows FoxPro 2.5 for
Windows ,作為“客戶“程式,支持
Microsoft Windows 的目標連線及嵌人(OLE)功能。這就是說,可以在FoxPro ?.5 for Windows應用程式中嵌人或連線由其他Windows程式所產生的目標,這些目標自然包括由W indoors下的圖像處理軟體(如Aldus PhotoStyler)所生成的
BMP 圖像檔案。這就是在FoxPro 2.5forWindows系統中顯示圖像的原理。為實現OLE功能,FoxPro 2.5 for Windows為存儲其它Windows所產生的目標提供了一類新域類型General,並提供了幾個新的命令選項來操作它們。不過在本文中,我們只介紹對OLE目標和Windows位映象BMP圖像檔案的顯示操作,來說明如何實現圖文資料庫。
在對OLE目標作顯示之前,首先應將它們插人資料庫的General域中。