馮瓊瑛 陳粵超 張家善 楊 鋒 張瑜斌
1(廣東海洋大學實驗教學部 廣東 湛江 524088)2(廣東湛江紅樹林國家級自然保護區(qū)管理局 廣東 湛江 524000)3(湛江財貿中等專業(yè)學?!V東 湛江 524042)4(湛江市海洋與漁業(yè)環(huán)境測站 廣東 湛江 524039)5(廣東海洋大學海洋資源與環(huán)境監(jiān)測中心 廣東 湛江 524088)
?
紅樹林濕地鳥類查詢與鑒別系統(tǒng)的設計與實現(xiàn)
馮瓊瑛1陳粵超2張家善3楊鋒4張瑜斌5*
1(廣東海洋大學實驗教學部廣東 湛江 524088)2(廣東湛江紅樹林國家級自然保護區(qū)管理局廣東 湛江 524000)3(湛江財貿中等專業(yè)學校廣東 湛江 524042)4(湛江市海洋與漁業(yè)環(huán)境測站廣東 湛江 524039)5(廣東海洋大學海洋資源與環(huán)境監(jiān)測中心廣東 湛江 524088)
針對中國紅樹林濕地現(xiàn)有21目72科195屬445種鳥類資源,采用B/S結構,結合MSSQL數(shù)據(jù)庫、ASP.NET、Web技術和專家系統(tǒng)理論,設計和開發(fā)紅樹林濕地鳥類查詢與鑒別系統(tǒng)。并就系統(tǒng)瀏覽、查詢和鑒別功能的實現(xiàn),給出具體的解決方案;同時,利用51ditu API成功實現(xiàn)了電子地圖與.NET的交互,使用戶能快捷方便地對觀鳥記錄進行添加和維護。實踐證明,系統(tǒng)性能良好,功能實用方便。隨著系統(tǒng)的完善和應用,對加強紅樹林濕地鳥類管理、保護紅樹林濕地鳥類資源、保護沿海生態(tài)環(huán)境有著積極的意義。
紅樹林濕地鳥類MSSQL數(shù)據(jù)庫Web技術專家系統(tǒng)二叉樹電子地圖
鳥是大自然的精靈,鳥是人類的朋友。鳥類不僅帶給人們享受,還在保持生物多樣性、維護生態(tài)平衡方面發(fā)揮著重要作用。作為主要棲息地之一的紅樹林濕地蘊含了豐富的鳥類資源。據(jù)《中國紅樹林區(qū)鳥類》一書記載,中國紅樹林濕地現(xiàn)有鳥類21目72科195屬445種,分別占全國鳥類24目101科429屬1332種的83%、71%和33%[1,2]。為了方便用戶瀏覽、查詢和鑒別紅樹林濕地鳥類,積累鳥類原始觀測數(shù)據(jù),設計和開發(fā)了紅樹林濕地鳥類查詢和鑒別系統(tǒng)。
1.1系統(tǒng)目標
以中國紅樹林區(qū)鳥類名錄為依據(jù),專家系統(tǒng)理論為核心,結合Web技術和數(shù)據(jù)庫技術,在查閱了眾多鳥類學論著[3-6]和鳥類相關網站的基礎上,建立紅樹林濕地鳥類查詢與鑒別系統(tǒng),實現(xiàn)紅樹林濕地鳥類的快速瀏覽查詢和鑒別,以及觀鳥記錄地圖管理功能。
1.2系統(tǒng)架構
系統(tǒng)采用三層B/S架構(如圖1所示),以MSSQL Server 2005 數(shù)據(jù)庫作為后臺數(shù)據(jù)管理系統(tǒng),實現(xiàn)紅樹林濕地鳥類資源和鑒別知識庫的管理。開發(fā)平臺采用.NET Framework,有效地降低了系統(tǒng)對客戶機的要求, 避免了在客戶機上分發(fā)應用程序與版本控制的困難[7]。并在.NET 架構下引入AJAX,引入AJAX后,將系統(tǒng)分為含有AJAX引擎的表現(xiàn)層、業(yè)務邏輯層和數(shù)據(jù)層。AJAX 和.NET 平臺的結合優(yōu)化了系統(tǒng)的結構設計,減少了用戶交互過程中的等待時間,彌補ASP.NET 在客戶端顯示上的不足,提高了系統(tǒng)的資源利用率和響應速度。
圖1 系統(tǒng)體系結構
1.3系統(tǒng)功能設計
按照系統(tǒng)對功能的需求,將功能模塊分為客戶端和后臺管理兩大部分。其中客戶端設計七大功能模塊,包括注冊登錄模塊、鳥類知識模塊、瀏覽模塊、查詢模塊、鑒別模塊、觀測記錄管理和用戶中心模塊。后臺管理分為四大功能模塊,包括系統(tǒng)管理、用戶管理、鳥類知識管理、紅樹林鳥類管理。各模塊下設若干子模塊,如圖2所示。
圖2 系統(tǒng)功能設計
1.4系統(tǒng)流程設計
系統(tǒng)流程設計如圖3所示。游客輸入系統(tǒng)網址,進入主頁,可以直接瀏覽鳥類知識、紅樹林濕地鳥類各階元信息,或進行鳥類查詢、鳥類鑒別,也可以注冊成為本站會員。會員除了享有游客的權利外,還可以添加觀鳥記錄、發(fā)布文章、發(fā)表評論、發(fā)送站內短信等。管理員直接進入后臺管理模塊,進行系統(tǒng)設置、會員管理、紅樹林系統(tǒng)管理,或上傳圖片、審核用戶添加的觀鳥記錄等操作。
圖3 系統(tǒng)流程設計
根據(jù)系統(tǒng)需求,建立紅樹林濕地鳥類資源和鑒別數(shù)據(jù)庫。再按分類階元,在該數(shù)據(jù)庫中建立目表、科表、屬表、種表、鳥類鑒別特征表、二叉檢索編碼表、觀鳥記錄和電子地圖以及管理員表、用戶表、用戶組表、站內短信表、評論表等。各表字段分別設置如下,各表之間通過種ID、屬ID、科ID和目ID建立表間關系。
目表:目ID、目中文名、目中文拼音、描述、生物學特征、鑒別特征、分類與分布、圖片、備注等。
科表:科ID、科中文名、科中文拼音名、科拉丁名、目ID、描述、鑒別特征、圖片、備注等。
屬表:屬ID、屬中文名、屬中文拼音名、科ID、描述、鑒別特征、圖片、備注。
種表:種ID、種中文名、種中文拼音名、種拉丁名、種英文名、屬ID、國內分布、紅樹林區(qū)分布情況、紅樹林區(qū)居留類型、受威脅狀況、保護級別、保護狀況、描述、生境、食性、繁殖、叫聲、鑒別特征、圖片、備注等。
觀鳥記錄和電子地圖:記錄號ID、種ID、種名、經度、緯度、觀測日期時間、描述、圖片、添加用戶、添加時間、更新用戶、更新時間、是否通過審核、備注等。
鳥類鑒別特征表:種ID、種中文名、種拉丁名、形狀、體長、姿態(tài)、飛行類型、頭、虹膜、喙、翼或翅、尾、足、羽色、鳴叫、行為習性、棲息地、季節(jié)、備注等。
二叉檢索編碼表:序號、編碼、描述、目ID、科ID、屬ID、科ID、備注。
系統(tǒng)采用SQL Server 2005構建物理數(shù)據(jù)庫,并建立功能強大的后臺管理模塊,方便管理員對數(shù)據(jù)庫進行維護或備份。同時,為保證系統(tǒng)良好的可移植性,將程序用到的所有連接字符串信息統(tǒng)一存放于config.web配置文檔中,并在程序中對該文檔配置進行調用來實現(xiàn)數(shù)據(jù)庫連接。當系統(tǒng)需要進行移植時只修改config.web配置文檔中的相應數(shù)據(jù)信息即可實現(xiàn)數(shù)據(jù)庫連接的轉移。
3.1B/S結構
系統(tǒng)采用B/S結構,在該結構中,主要事務邏輯在服務器端實現(xiàn),極少部分事務邏輯在瀏覽器端實現(xiàn),大大簡化了客戶端電腦負荷,減輕了系統(tǒng)維護與升級的成本。
3.2ASP.NET和ASP.NET AJAX
系統(tǒng)采用Visual Studio.NET 2008開發(fā),同時引入AJAX技術實現(xiàn)客戶端的異步請求操作,解決服務器負擔和整頁刷新帶來的白屏問題[8]。當管理員對紅樹林濕地鳥類某些階元進行修改后,用戶在請求更新網頁時,將部分更新修改后的信息,不需要刷新整個頁面,減少了用戶的等待時間,提高系統(tǒng)響應速度。
3.3jQuery
系統(tǒng)在瀏覽和查詢模塊主要用到了jQuery技術。jQuery是一套簡潔、快速、靈活的JavaScript腳本庫,同時兼容CSS3和各種瀏覽器,使用戶能更方便地處理HTML、documents、events,實現(xiàn)動畫效果,并為網站提供AJAX交互。
其中,應用jquery.prettyPhoto.js進行圖片顯示,達到類似QQ相冊的展示效果,而且圖片多時可以在頁面上只加載設置的部分圖片,不用一次加載所有圖片。同時,應用jquery.uploadify.v2.1.0.min.js實現(xiàn)圖片無刷新上傳,上傳時顯示進度條,而且能在頁面中顯示已上傳的文件,也可以即時刪除圖片。在設計鳥類瀏覽和鳥類查詢時,使用了rtree.js,rtree.js在層數(shù)不多時使用非常簡單,效果很好。鳥類鑒別模塊用到無限樹功能,選擇了jquery.simple.tree.js,可以異步加載子樹,而且體積小、兼容性好。
4.1瀏覽功能的實現(xiàn)
鳥類信息瀏覽采用樹形目錄方式,左側顯示目科屬種名稱,可單擊展開,右側顯示單擊后對應階元的詳細信息。
4.2查詢功能的實現(xiàn)
鳥類查詢主要用SQL結構化查詢語言實現(xiàn),查詢結果顯示時利用了jQuery技術。可以按中文名、拉丁名、中文拼音名、鑒別特征、叫聲等進行精確或模糊查詢,查詢結果以目錄樹的方式顯示,點擊左側的分類階元名稱可在右側查看詳細信息。圖4為輸入中文鳥名“鷺”的模糊查詢結果,右側為點擊草鷺時的顯示情況。
圖4 模糊查詢
4.3鑒別功能的實現(xiàn)
本系統(tǒng)設計了三種鑒別方式,分別是至目科、至屬種,或在已知目科的情況下進行屬種鑒別。當完全不知待鑒別的鳥類所屬目科或屬種時,可直接點擊展開條件進行至目科或屬種的鑒別;當已知待鑒別的鳥類所屬目科名而需要進一步確定屬種時,可先輸入所屬目科名,直接從該目科后開始鑒別。
鳥類目科檢索表是鳥類分類檢索的主要工具。系統(tǒng)依據(jù)鳥類目科檢索表與二叉樹的結構相似性,將該表轉換為鳥類目科檢索二叉樹,并依據(jù)該樹設計鳥類鑒別編碼表。表字段設置包括序號、編碼、描述、目名、科名、種名、備注等,并與數(shù)據(jù)庫中目、科、種表相應字段建立關系。同時為了提高屬種鑒別效率,系統(tǒng)引入了B+樹和判定樹學習,結合專家系統(tǒng)理論、產生式規(guī)則實現(xiàn)了鳥類目科至屬種的鑒別。該模塊的詳細設計見《專家系統(tǒng)在紅樹林濕地鳥類鑒別中的設計與實現(xiàn)》[9]。圖5所示為鸛形目鷺科草鷺的鑒別過程。
圖5 鳥類鑒別過程
4.4觀鳥記錄添加與管理
地圖API可讓第三方網站通過API編程方式調用地圖服務網站數(shù)據(jù)庫中的信息和功能[10]。為了記錄鳥類分布信息和觀測信息,積累原始觀測資料,系統(tǒng)設計了觀鳥記錄模塊。該模塊采用51ditu API開發(fā),51ditu API提供地圖接口、導航接口和查詢接口三大類功能接口,可以訪問在線數(shù)據(jù)庫,實現(xiàn)基本地圖操作、搜索和導航等功能[11]。能方便地將用戶的觀鳥記錄添加到電子地圖上,并保存在網站數(shù)據(jù)庫,成功實現(xiàn)了電子地圖與.NET的交互。注冊用戶可以方便地將自己的觀鳥記錄加入到網站數(shù)據(jù)庫中(如圖6所示),并經過管理員審核后即可實時顯示。
圖6 觀鳥記錄添加
管理員從后臺登錄后,可以對用戶添加的觀鳥記錄進行審核和編輯(如圖7所示),也可以直接添加或編輯觀鳥信息。
圖7 觀鳥記錄后臺管理
4.5輔助功能的實現(xiàn)
系統(tǒng)還建立了鳥類知識模塊和用戶中心,以方便用戶了解鳥類知識和進行交流。普通用戶可以直接瀏覽鳥類知識,了解紅樹林鳥類研究領域的最新動態(tài),會員還可以添加鳥類知識或發(fā)表評論。也可通過用戶中心,進行收發(fā)短信、發(fā)布文章、發(fā)表評論、修改密碼、修改資料等操作。
4.6后臺管理功能實現(xiàn)
系統(tǒng)設計了強大的后臺管理功能,管理員可直接登錄進入后臺管理模塊。除定期對數(shù)據(jù)庫進行維護外,還可以進行系統(tǒng)設置、用戶管理、用戶組管理、鳥類知識及評論管理,以及對紅樹林濕地鳥類信息模塊的管理,包括:添加、編輯、刪除鳥類各階元信息;添加或編輯鳥類鑒別編碼、審核用戶注冊資料、回答用戶提問;審核或編輯觀鳥記錄、上傳圖片等。以上功能模塊的有機結合,使得系統(tǒng)具有較強的實用性和專業(yè)性。
系統(tǒng)的創(chuàng)新性:系統(tǒng)數(shù)據(jù)庫收錄了數(shù)十萬字的文字信息和上千張圖片,包含了中國紅樹林濕地鳥類21目72科195屬445種各階元的詳細信息。目前,國內還沒有專門針對中國紅樹林濕地鳥類的查詢系統(tǒng)。同時,利用51ditu API 成功實現(xiàn)了電子地圖與.NET的交互,使用戶能方便地對觀鳥記錄進行添加和管理。此外,利用產生式規(guī)則與二叉樹結構的相似性,設計開發(fā)了鳥類鑒別模塊,實現(xiàn)了鳥類目科至屬種的鑒別。目前,系統(tǒng)目科鑒別功能已全部實現(xiàn),屬種鑒別功能尚在完善中。
系統(tǒng)特色:系統(tǒng)采用B/S結構,界面美觀,人機交互友好。AJAX技術的使用使系統(tǒng)具有更快的響應速度。同時,提供了強大的后臺管理功能,使管理員能快捷方便地對系統(tǒng)進行管理維護。
系統(tǒng)的不足:系統(tǒng)不能實現(xiàn)圖像或聲音的鑒別,只能通過對鳥類特征的文字描述進行引導式鑒別或檢索符合條件的記錄。
本系統(tǒng)開發(fā)的難點在于鳥類鑒別專家知識庫的建設,為了保證鳥類資源和知識庫的專業(yè)性、準確性和實用性,特別邀請紅樹林濕地鳥類學專家對知識庫進行審核。目前,系統(tǒng)瀏覽、查詢、目科鑒別和觀鳥地圖功能已全部完成,屬種鑒別功能仍在完善中。隨著系統(tǒng)的完善和應用,對保護紅樹林濕地鳥類資源、保護沿海生態(tài)環(huán)境,將有著積極的意義。
[1] 周放,王穎,鄒發(fā)生,等.中國紅樹林區(qū)鳥類[M].北京:科學出版社,2010.
[2] 鄭光美.中國鳥類分類與分布名錄[M].北京:科學出版社,2005.
[3] 鄭光美,張詞祖.中國野鳥[M].北京:中國林業(yè)出版社,2002.
[4] 約翰·馬敬能,卡倫·菲利普斯,何芬奇.中國鳥類野外手冊[M].長沙:湖南教育出版社,2000.
[5] 王元青.探索書系—鳥類[M].沈陽:遼寧教育出版社,2001.
[6] 郭冬生.常見鳥類野外識別手冊[M].重慶:重慶大學出版社,2007.
[7] 李正希,胡方霞,陳發(fā)吉,等.ASP.NET案例開發(fā)[M].北京:中國水利水電出版社,2005.
[8] 仰燕蘭,金曉雪,葉樺.ASP.NET AJAX框架研究及其在Web開發(fā)中的應用[J].計算機應用與軟件,2011,28(6):195-198.
[9] 馮瓊瑛,張家善,陳粵超,等.專家系統(tǒng)在紅樹林濕地鳥類鑒別中的設計與實現(xiàn)[J].廣東海洋大學學報,2014,34(1):78-82.
[10] 王紅崧,周海晏.基于百度地圖API的旅游地理信息系統(tǒng)開發(fā)[J].現(xiàn)代計算機:專業(yè)版,2012(23):60-63.
[11] 景昕蒂,王方雄.大連市旅游電子地圖的設計與開發(fā)[J].地理空間信息,2011,9(1):128-130.
DESIGN AND IMPLEMENTATION OF MANGROVE WETLAND BIRDS QUERY AND IDENTIFICATION SYSTEM
Feng Qiongying1Chen Yuechao2Zhang Jiashan3Yang Feng4Zhang Yubin5*
1(Experimental Teaching Administration Department,Guangdong Ocean University,Zhanjiang 524088,Guangdong,China)2(GuangdongZhanjiangMangroveNationalNatureReserveAdministration,Zhanjiang524000,Guangdong,China)3(ZhanjiangFinanceandTradeSecondarySpecializedSchool,Zhanjiang524042,Guangdong,China)4(ZhanjiangOceanandFisheryEnvironmentalMonitoringStation,Zhanjiang524039,Guangdong,China)5(MonitoringCenterforMarineResourcesandEnvironments,GuangdongOceanUniversity,Zhanjiang524088,Guangdong,China)
Existing birds resources found in mangrove wetlands in China add up to 21 orders, 72 families, 195 genera and 445 species. In this regard, based on B/S structure and the combination of MSSQL database, ASP.NET, Web technology and expert system theory, we designed and developed a query and identification system for mangrove wetland birds and put forward the specific solution on the realisation of system browse, query and identification functions. Meanwhile, with the help of 51 ditu API, we successfully realised the interaction between electronic maps and .NET, thus the users can add and maintain their records of the observed birds conveniently. Practice has proved that the system designed here has a good performance and is very functional. With gradual perfection and application, the system will have positive meaning in protecting the resources of mangrove wetland birds and coastal ecological environment.
Mangrove wetland birdsMSSQL databaseWeb technologyExpert systemBinary treeElectronic map
2015-03-08。國家海洋公益性行業(yè)科研專項(20130 5021);廣東省教育廳科技創(chuàng)新項目(2013KJCX0095)。馮瓊瑛,實驗師,主研領域:數(shù)據(jù)庫及GIS應用。陳粵超,高工。張家善,講師。楊鋒,高工。張瑜斌,教授。
TP3
A
10.3969/j.issn.1000-386x.2016.09.015