全 文 :iFlora beta版移动平台软件研制*
李拓径, 王雨华**
(中国科学院昆明植物研究所科技信息中心, 云南 昆明摇 650201)
摘要: iFlora计划的目的之一是为提高公众对植物的认知和了解, 移动设备平台软件开发是该计划的重要
组成部分。 因此, 根据 iFlora研发的总体需求, 在中国植物物种信息数据库的基础上, 设计和开发了 iFlo鄄
ra beta版移动平台软件。 该软件在应用软件设计的基础上, 针对安卓系统和 iOS系统, 实现对物种数据库
的基本检索功能、 向导式查询功能、 专家互动功能及系统个性化功能, 满足用户对植物数据快速检索及物
种鉴定的需求。 在此基础上, 探讨了植物检索特征库和图片特征库的建设思路, 为 iFlora的总体目标实现
奠定基础。
关键词: iFlora; 物种鉴定; 数据库; 移动设备
中图分类号: TP 311, Q 948. 2摇 摇 摇 摇 文献标识码: A摇 摇 摇 摇 摇 文章编号: 2095-0845(2013)06-784-07
Development of iFlora beta
LI Tuo鄄Jing, WANG Yu鄄Hua**
(Science and Technology Information Center, Kunming Institute of Botany, Chinese Academy of Sciences, Kunming 650201, China)
Abstract: iFlora Plan aims to raise the public knowledge on plants. As software development for mobile equipments
is an important part of iFlora Plan, we designed and developed iFlora beta, a software for iFlora on a mobile plat鄄
form, based on the China flora database. With Android system and iOS system, iFlora beta can offer services such
as basic search for plant species, wizard search, expert interaction and system customization, which makes it possi鄄
ble to quickly search for plant data and identify plant species. We also discussed the way for developing a flora
search feature database and an image feature database, which built the bases for the general goal of iFlora Plan.
Key words: iFlora; Species identification; Database; Mobile devices
摇 iFlora是我国植物学家提出的新一代智能植
物志, 是融入新一代测序技术、 DNA 条形码数
据和计算机信息技术等新兴技术而产生的帮助
人们认知植物的新型设备 (李德铢等, 2012)。
目前, 智能移动设备 (如智能手机、 平板电脑
等) 已普遍应用, 随着新一代测序技术的研发
和 DNA条形码标准数据库的建设, 为 iFlora的
研发提供了很好的前景。 iFlora 研制是后植物志
时代植物学发展的趋势, 随着信息媒介存储的
信息技术的发展, 植物学知识积累可以大大扩充
传统纸质版记载的范围, 以多样化、 立体化、
媒体化、 大容量等多种方式存在并进行使用,
并且普及面可以由专业人员逐步延展到普通大
众。 正是在此背景下, 为了能够尽早地帮助人们
认知植物, 应用 iFlora的初级产品, 我们充分利
用广为用户使用的 “中国植物物种信息数据
库冶, 结合现代智能移动终端的先进技术和 iFlo鄄
ra科技领域云理念 (庄会富等, 2012), 研制了
iFlora beta版移动平台软件, 下面就此软件作具
体介绍。
植 物 分 类 与 资 源 学 报摇 2013, 35 (6): 784 ~ 790
Plant Diversity and Resources摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 DOI: 10. 7677 / ynzwyj201313213
*
**
基金项目: 国家科技基础性工作专项项目 (2013FY112600)
通讯作者: Author for correspondence; E鄄mail: wangyuhua@ mail. kib. ac. cn
收稿日期: 2013-10-16, 2013-10-18 接受发表
作者简介: 李拓径 (1982-) 男, 工程师, 主要从事生物多样性数据库建设研究。 E鄄mail: lituojing@ mail. kib. ac. cn
1摇 数据来源及构成
在 iFlora计划的整体设计中, 我们将数据主
要分成核心数据、 基础数据、 扩展数据三大类
(陆露等, 2012)。 核心数据是主要用于鉴定和识
别植物物种的数据, 拟包含物种名称、 DNA 条
码、 检索特征、 形态特征等; 基础数据是对植物
生物学特征认知的数据, 拟包含形态学描述、 物
候特征、 生境、 海拔、 植物分布、 种子标本表
述、 存放位置等相关数据; 扩展数据是用于开发
利用植物的数据, 拟包含经济用途、 民族植物
学、 保护生物学、 引种栽培等相关信息。
本研制中主要依托的数据是 “中国植物物种
名录 (CPNI) 第 2版冶 和 “中国植物物种信息数
据库 (DCP)冶, 由中国科学院昆明植物研究所、
中国科学院植物研究所、 中国科学院武汉植物园
和中国科学院华南植物园联合建设, 已开发成网
络应用系统并发布于互联网 (http: / / www. plants.
csdb. cn / ), 在中国科学院科学数据库网站群中
的访问量名列前茅, 深受用户喜爱。
2摇 开发环境和技术构架
iFlora软件的开发, 应对已有数据进行整理
归纳, 形成合理的数据存储结构, 然后再采用三
层架构模式进行开发, 即在软件实现过程中分成
界面层 (UI)、 业务数据操作层和基础数据层。
目的是将逻辑结构和软件结构进行清晰优化, 并
在后期的开发中易于扩展, 最后, 融入面向对象
的编程技术及相关的网络技术。 目前来说, iFlo鄄
ra移动平台软件主要基于 “中国植物物种信息
数据库冶 的功能扩展, 其主要功能模块包含植
物信息的快速查询、 分类查询、 志书查询、 植物
索引表向导式查询, 同时辅助以照片拍摄并实时
上传给专家鉴定的互动功能。
整体技术构架如图 1, 本研制只是终端智能
设备上应用的初步实现。
iFlora beta移动平台安卓版的开发主要基于
JAVA JDK 1. 6 开发包和 Eclipse 3. 7 Indigo IDE
( Integrated Development Environment) 集成开发
平台, 以及 Android 4. 0 Ice Cream SDK (software
development kit 软件开发工具包) 实现。 主要方
法是使用 Eclipse 进行安卓应用开发需要给 E鄄
clipse装 ADT 插件, 这样 Eclipse 就可以和安卓
sdk建立连接, 此后, 可以在 Eclipse中启动安卓
模拟器进行程序调试等 ADT 插件安装, 同时也
可以下载 ADT的 zip包安装安装完插件后, 需要
做一些简单的配置即可完成开发的部署。
摇 摇 iFlora beta移动平台 iOS 版的建设主要基于
苹果 iOS操作系统 Mac OS X 10. 7 Mountain Lion,
通过申请苹果开发者账号, 通过在 Mac OS 下运
用 Xcode 开发工具进行苹果 iPhone 智能手机的
平台应用开发, 开发完成后向 Apple App Store进
行产品发布供用户下载与使用。 Xcode 是 Apple
的开发工具套件, 支持项目管理、 编辑代码、 构
建可执行程序、 代码级调试、 代码的版本管理、
性能调优等。 这个套件的核心是 Xcode 应用本
身, 它提供了基本的源代码开发环境。
3摇 移动平台的设计与实现
在实际需求基础上, 依据现在流行的安卓和
iOS系统, 采用三层架构的模式开发了 iFlora be鄄
ta版移动平台软件, 设计了快速搜索、 分等级搜
索和志书式搜索三种查询功能。 并特别开发了专
家互动的特色功能模块。 基本查询功能是根据用
户正常使用方式进行设计和开发, 主要满足用户
在没有互联网的情况下, 能够正常查询植物学的
相关知识。
摇 摇 具体效果如图 2 所示:
查询之后进入 “详细内容冶、 “下级目录冶、
“检索表冶 三个可选项。 “详细内容冶 将显示本
级的详细信息。 “下级目录冶 将继续进入本级别
的下级信息中, 例如: 科将进入下级属列表, 属
将进入下级种列表中。 “检索表冶 是如果本级拥
有下级检索表, 将跳转进入向导式查询中。 通过
这三种方式展现, 可以有效的、 丰富的给用户带
来相关信息内容。
3. 1摇 快速搜索模块
快速搜索是通过输入物种拉丁名、 中文名或
者其他名称进行物种的快速搜索。 快速搜索模块
是本软件的基础功能模块。 快速搜索是满足用户
快速获得信息的手段之一, 为用户提供多层次、
多方位的查询功能, 可以同时实现搜索的精确匹
配和模糊匹配。 搜索的结果将符合用户输入条件
的结果进行显示。
5876 期摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 李拓径和王雨华: iFlora beta版移动平台软件研制摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇
图 1摇 iFlora软件整体架构图
Fig. 1摇 iFlora overall software architecture diagram
摇 摇 其搜索的策略是优先进行精确匹配再进行模
糊匹配, 将两部分检索的结果进行合并显示在查
询列表中。 其搜索的核心代码如下:
精确检索代码: select*from CONTENTS WHERE
ORG_CHS_NAME=忆***忆 or ORG_L_NAME=忆***忆
or OTHER_NAME=忆***忆。
模糊检索代码: select*from CONTENTS WHERE
ORG_CHS_NAME like 忆%***%忆 or ORG_L_NAME
like 忆%***%忆 or OTHER_NAME like 忆%***%忆 。
3. 2摇 分等级搜索模块
分等级搜索是利用植物分类学中科属种等多
级分类进行检索。 分等级搜索是软件的重要组成
部分, 主要满足用户从生物分类角度进行信息检
索的相关需求。 分等级搜索按照植物科级别进行
下级检索, 最低可以检索到种下各个等级。 具体
有门、 纲、 目、 科、 属、 种等相关下级检索。 其
搜索的核心代码如下。
第一级: select*from CONTENTS WHERE
CLASS= 忆科忆 OR CLASS= 忆目忆 ORDER BY ORG_L
_NAME ASC
第二级及以下: select*from CONTENTS WHERE
PARTENT_CHSNAME =忆父节点的中文名(ORG_
CHS_NAME 字段)忆 ORDER BY ORG_L_NAME
ASC
687摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 植 物 分 类 与 资 源 学 报摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 第 35 卷
图 2摇 检索效果图
Fig. 2摇 Search renderings
3. 3摇 志书式搜索模块
志书式搜索是 《中国植物志》 已出版图书
各卷册的查询, 将植物志书立体的呈现在用户界
面中进行检索。 其主要功能按照传统志书的排列
方式进行编排, 用户可以进行传统递进的模式进
行搜索和阅读。 其搜索的核心代码如下。
获取卷: SELECT CAST ( substr (VOLUME,
1, length (VOLUME)鄄3) as integer) as _ id from
CONTENTS GROUP BY_id ORDER BY_id ASC。
摇 摇 获取册: SELECT VOLUME as_id from CON鄄
TENTS where substr (VOLUME, 1, length (VOL鄄
UME)鄄3)= 忆卷的编号(1, 2, 3)忆GROUP BY_id
ORDER BY_id ASC。
摇 摇 通过卷册的编号获取植物信息: SELECT*
from CONTENTS where VOLUME =忆卷册的编号,
格式: 2 (1)忆 。
3. 4摇 向导式索引表检索
向导式检索表检索是 iFlora 移动平台软件的
特色功能, 基于植物检索表基础数据进行开发和
设计。 植物检索表是用归纳与歧分法的方法把许
多植物编成一个表, 将它们区分开来。 传统植物
检索表主要是基于纸质版植物志进行, 一般使用
二分顺序查找的方式进行植物检索, 其主要特征
是利用植物外部形态特征进行抽象归类后进行查
找。 具体形式如下:
1、 裸子植物
2、 乔木、 高大乔木
3、 落叶乔木, 主枝斜展, 近轮生
4、 有长枝和脱落性短枝, 大枝斜展, 不规则轮生, 小
枝下垂, 对生或近对生, 叶交互对策, 羽状二列,
冬季与无芽小枝一起脱落, 雌雄株 水杉……………
4、 主枝斜出, 近轮生, 有长短枝之分, 叶扇形, 长枝
互生, 短枝簇生, 风媒花, 雌雄异株 银杏…………
3、 常绿乔木
5、 叶片为条形叶, 无鳞叶
6、 叶螺旋状互生
7、 树冠成塔形, 层次分明, 大枝轮生、 平展, 叶二型
南洋杉…………………………………………………
7、 披针形、 针形或鳞形
8、 小枝下垂, 雌雄异株, 少数同株
9、 叶先端渐尖, 叶面中脉两侧各有一条绿色边缘宽的
白粉带, 在先端会合 刺柏……………………………
9、 树皮绿色, 平滑, 先端渐长尖, 叶表下面的魄气孔,
中脉地上面隆起 三尖杉………………………………
8、 树皮自然脱落, 条形脉或主脉明显
7876 期摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 李拓径和王雨华: iFlora beta版移动平台软件研制摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇
摇 摇 按照以上的序号顺序, 基于形态特征进行描
述的跳转, 以找到对应的物种。 检索表检索的关
键在于序号的编号, 一般认为是两个成组出现,
也有三个成组出现。 但是由于以往数据问题, 出
现部分数据缺失和编号不准确的问题, 例如蕨类
植物和被子植物的序号编码不一致。 为了解决部
分数据序号不一致的问题, 必须按照检索表规则
对索引表进行重新编号。 其索引表编号生成算法
描述如下:
摇 摇 输入:
1) 对原文索引按照纸质版植物志顺序从 1
开始进行编号, 字段为 index_id。 index_id 最大
值等于该索引表的总条数的值。
2) 对原文检索条目对应进行存值, 字段为
jump_id, 一般认为 index_id和 jump_id为一组。
摇 摇 输出:
按照索引表生成和纸质版植物志编号一致的
序号, 即 chs_id字段。
摇 摇 算法:
1) initialize data chs_id =NULL, k=1
2) while (chs_id is null)
3) setvalue (chs_id [index_id] =k)
4) if jump_id is not null
5) setvalue (chs_id [jump_id] =k)
6) end if
7) k+=1;
8) end while
在以上算法的基础上, 对索引表序号重新进
行整理和归并, 确保生成有效的索引号。
在生成好的索引号的基础上, 在 iFlora 软件
中使用向导式的查询方式对索引表进行检索。 向
导式查询的入口可以从植物门级别 (即: 裸子
植物、 被子植物、 石松和蕨类植物) 开始, 可
以在科属等分类级别上进行。
在 chs_id 生成完成后的基础上, 进行逻辑
判断, 实现检索表的二分向导查找。 其具体查找
过程如图 3。 分别判断是否第一次进入检索、 有
检索表无名称、 有植物名称且有检索表、 有名称
无检索表但有下级四种情况进行判断。 通过图中
的判断能够准确查找到对应的检索表并且将相应
的信息进行显示。
3. 5摇 专家互动功能
专家互动功能是 iFlora移动平台软件重要特
色功能之一。 专家互动功能是利用现代计算机及
互联网技术, 用户可以针对目标植物进行拍照,
然后通过 iFlora将图片上传到指定服务器, 然后
图片由分类学专家对植物进行分类鉴定, 鉴定确
定后通过短信或者消息等方式反馈给用户。 通过
专家互动功能的开发, 可以满足用户准确进行植
物鉴定的需求。
专家互动功能通过调用安卓系统中摄像头
API接口进行拍照, 然后通过 HTTP 协议上传到
服务器中, 照片通过专家鉴定确认所属的物种,
将相应的信息通过短信或者消息的方式反馈给客
户端。 照相关键代码如下:
intent = new Intent (MediaStore. ACTION_IM鄄
AGE_CAPTURE);
intent. putExtra (MediaStore. EXTRA_OUTPUT,
Uri. fromFile (image));
startActivityForResult (intent, takephotoSuccess);
3. 6摇 用户个性化功能
为了满足需求用户的个性化需求, 在 iFlora
移动平台软件设计了用户个性化功能, 主要是收
藏夹和最近浏览功能。 收藏夹功能是提供用户对
已经检索到的信息进行标记收藏, 满足用户对常
用植物信息的收藏。 最近浏览功能是对最新浏览
过的数据信息按照时间进行收藏, 确保用户能够
追踪自己近期的浏览情况。 除此之外, 还设计了
软件自动升级功能, 通过检测最新版本来确保软
件能够及时对软件的主体或者数据进行更新。
在进一步的开发中, 结合现行软件功能需
求, 将进一步设计和开发适用于用户个性化的其
他功能模块, 满足用户对个性化的定制。
4摇 讨论与分析
随着 iFlora理念提出和相关工作的开展, 深
入了解植物学知识, 构建新一代智能植物志已经
成为必然。 除了以 DNA 条形码作为重要识别依
据外, 植物的性状特征和图像特征仍然是常规认
知植物中不可或缺的重要内容。 构建基于移动设
备的应用软件是 iFlora的重要组成部分, 我们在
研制过程中, 充分利用了 “中国植物物种信息数
据库冶 的基础数据, 结合移动设备的开发技术,
887摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 植 物 分 类 与 资 源 学 报摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 第 35 卷
图 3摇 向导式查询实现效果
Fig. 3摇 Wizard queries achieve results
9876 期摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 李拓径和王雨华: iFlora beta版移动平台软件研制摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇
进行软件功能的开发和研制, 为 iFlora 的发展奠
定了基础。 目前, iFlora 移动软件的建设仅是好
的开端, 在后期的开发中将充分结合 DNA 条形
码、 检索特征库、 图形图像识别等技术进行深入
的设计和开发。
4. 1摇 检索特征库的构建
传统植物分类学大多依据外部形态和内部解
剖特征来建立植物学的分类体系, 检索特征是分
类的核心。 通过上述可以知道, 在纸质版植物志
中, 植物检索表是传统的检索鉴定植物的方式,
形式上通过对形态特征的细分进行二分检索构建
而成。 现代计算机信息技术的发展, 已经在多个
领域逐渐取代了纸质版书籍, 即 “无纸化冶 时
代已经在影响人们生活的多个方面。 从另外一个
角度来说, 无论是传统纸质版还是信息化技术都
只是信息的载体, 只是其容纳方式和呈现方式有
较大的差异。 因此, 基于信息化技术, 构建植物
检索特征库将成为未来植物分类学新的发展方向
之一。
植物检索特征库比传统纸质版植物志拥有更
多的信息容纳空间, 更全面的信息化记录, 并且
脱离传统的一维的文字描述, 以立体化的方式呈
现在用户面前。 通过对现有植物志数据库进行植
物分类 (如: 界、 门、 纲、 目、 科、 属、 种等)
及其子分类的形式对植物特征数据库进行整理,
并且通过对现有植物志数据库进行植物组成
(根、 茎、 叶、 花、 果实、 种子) 及其子分类的
形式对植物特征数据库进行整理, 形成特征数据
库。 数据整理的方式可以采用计算机规范化程序
整理和人工整理相结合方式进行。
相对纸质版植物志的方式, 检索特征库建设
之后, 以数据库的方式有效的、 规范的、 立体的
存储植物的真实特征, 为植物立体化、 多样化鉴
定奠定基础。
4. 2摇 图片特征库构建
计算机图像识别技术是移动识别关键技术热
点 (杨雅等, 2012)。 检索特征库的建立, 是本
阶段图形特征库的原型基础。 建立图像特征库系
统将通过从植物分类及植物的组成 (根、 茎、
叶、 花、 果实、 种子) 及其子分类的图片进行
抽象形成植物的图形特征数据库。 图形特征库以
准确反映植物的真实准确特征为主, 并在后期的
图片比较中奠定数据基础。 目前通过对植物图片
识别研究发现, 植物的叶片形态更易于开展模式
识别研究 (Fuller 和 Hickey, 2005; Runions 等,
2005)。 通过植物的分类、 植物组成的角度, 并
组建专业的专家团队以某一植物分类作为试点的
形式, 逐步构建植物的图形特征库。
图片特征库构建完成以后, 可以在成熟的百
度图片搜索与对比技术、 谷歌图片搜素与对比技
术的基础上将用户提交的图片与库中的特征进行
对比, 从而完成植物的识别工作。
也参摇 考摇 文摇 献页
中国科学院昆明植物研究所. 中国植物物种信息数据库 (DCP)
[DB / OL]. http: / / www. plants. csdb. cn / .
Fuller DQ, Hickey LJ, 2005. Systematics and leaf architecture of the
Gunneraceae [J] . The Botanical Review, 71 (3): 295—353
Runions A, Fuhrer M, Lane B, 2005. Modeling and visualization of
leaf venation patterns [ J] . ACM Transactions on Graphics, 24
(3): 702—711
Li DZ (李德铢), Wang YH (王雨华), Yi TS (伊廷双) et al.,
2012. The next鄄generation flora iFlora [J] . Plant Diversity and
Resources (植物分类与资源学报), 34 (6): 525—531
Lu L (陆露), Wang H (王红), Li DZ (李德铢), 2012. Some
considerations on data integration for the next generation Flora
( iFlora) and flora revision———a case study of Gaultheria (Eri鄄
caceae) [J] . Plant Diversity and Resources (植物分类与资源
学报), 34 (6): 562—584
Yang Y (杨雅), Wang YH (王雨华), Du N (杜宁) et al., 2012.
Trends of iFlora by literature and information analysis [ J] .
Plant Diversity and Resources (植物分类与资源学报), 34
(6): 546—554
Zhuang HF (庄会富), Wang YH (王雨华), 2012. A framework of
scientific鄄cloud for iFlora [ J] . Plant Diversity and Resources
(植物分类与资源学报), 34 (6): 623—630
097摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 植 物 分 类 与 资 源 学 报摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 摇 第 35 卷