虚拟现实图书馆自动排架系统的实现方法转让专利

申请号 : CN201010520038.3

文献号 : CN101976459B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 郭向勇吕利昌李勇赵怡滨夏东升傅国强汪勇敖龙王传金徐春玲

申请人 : 深圳职业技术学院

摘要 :

本发明公开了一种虚拟现实图书馆自动排架系统的实现方法,包括建立图书书目数据库数据增长模型、图书信息同步、图书自动排架并展示,其中,图书自动排架并展示包括图书立面切割和图书自动排架。首先,本发明图书展示达到“内容级”的展示精度和图书自动排架达到“图书级”的排架精度,并且支持读者在虚拟现实场景中实现图书在线借阅、电子资源阅览等服务功能。

权利要求 :

1.一种虚拟现实图书馆自动排架系统的实现方法,包括建立图书书目数据库数据增长模型、图书信息同步、图书自动排架并展示,其中,图书自动排架并展示包括图书立面切割和图书自动排架;图书自动排架时,首先通过图书信息传递函数连接图书馆自动化管理系统,实时同步图书相关典藏信息、图书状态和图书书目数据以及形成图书信息管理表;然后将以上数据输入到自动排架系统中,按照排架规则,结合图书书架信息进行排架初始化;排架初始化包括:开始、选择图书典藏地点、计算分类图书增长率、确定书架分类容积率、计算分类图书平均页码、计算分类图书书架行数、根据现有书架数量调整分类图书容积率、图书初始排架完成、记录书架信息、图书模型排架、图书模型排架调整、记录书架信息、图书模型标记图书状态、结束。

2.根据权利要求1所述的虚拟现实图书馆自动排架系统的实现方法,其特征在于:按每行书架图书的册数确定每行索取号的起止号,输出形成书架信息表,包括书架号、行号、索取号起和索取号止信息;最后将此信息输出至图书排架信息表中。

3.根据权利要求2所述的虚拟现实图书馆自动排架系统的实现方法,其特征在于:建立图书书目数据库数据增长模型包括根据书目数据离散分布与书目数据增长模型曲线图建立增长模型。

4.根据权利要求3所述的虚拟现实图书馆自动排架系统的实现方法,其特征在于:图书信息同步包括建立图书信息数据库图书信息表,图书信息数据库图书信息表包括图书书目信息数据库表和图书状态数据库表。

5.根据权利要求4所述的虚拟现实图书馆自动排架系统的实现方法,其特征在于:图书自动排架并展示包括图书自动排架和图书自动排架展示算法。

6.根据权利要求5所述的虚拟现实图书馆自动排架系统的实现方法,其特征在于:图书自动排架展示时,根据单册图书封面图片和图书基本属性,通过图书立面切割方法,结合图书书目信息形成图书立面图片,进而建模生成单册图书模型,建立图书模型数据库。

7.根据权利要求6所述的虚拟现实图书馆自动排架系统的实现方法,其特征在于:图书自动排架还包括建立图书信息管理表、图书封面图片数据库、图书立面图片数据库、图书模型数据库、书架信息表和图书排架信息表。

8.根据权利要求7所述的虚拟现实图书馆自动排架系统的实现方法,其特征在于:图书自动排架展示包括图书上架与下架,图书上架与下架包括:开始;扫描输入单册图书登录号;图书单册是否新书,是则继续,否则返回扫描输入单册图书登录号;确定单册新书典藏信息,并由单册新书基本属性得到单册新书模型;计算单册新书物理典藏地点及显示;

单册新书是否手工上架,是则继续流程,否则返回计算单册新书物理典藏地点及显示;单册新书所属物理典藏地点单行书架计算合成;图书馆物理典藏地点单排书架展示;是否是最后一本单册新书,是则流程结束,否则返回扫描输入单册图书登录号。

说明书 :

虚拟现实图书馆自动排架系统的实现方法

技术领域

[0001] 本发明涉及虚拟现实技术应用于数字化图书馆的一种虚拟现实图书馆自动排架系统的实现方法。

背景技术

[0002] 目前,虚拟现实技术应用于图书馆物理环境与内外建筑环境渲染,实现虚拟图书馆漫游和图书馆使用导览为主的功能展示,以及图书馆建筑结构和书架、桌椅等物理设备外型结构的三维立体虚拟显示和基于传统二维“搜索”方式的图书简单定位功能,这种应用是典型的“漫游式虚拟现实图书馆”,功能特征主要是环境演示型。
[0003] 新加坡国立大学图书馆应用Google Earth技术制作出用于图书馆内部漫游的虚拟现实图书馆,介绍新加坡国立大学图书馆概貌,配备查询图书定位到书架大致位置的初级化“2D图书搜索”功能。该馆虚拟现实的整体应用效果属于虚拟现实技术应用的初级化应用阶段,但该应用水平则代表了当今全球高校图书馆虚拟现实技术应用的最高水平,该虚拟现实图书馆仅能实现图书所在二维空间的基本定位,无法以直观易用的方式动态显示每一排书架的图书。该虚拟演示图书展示达到了“书架级”精度,距离“图书级”展示精度尚有较大距离。
[0004] 台湾国立勤益科技大学图书馆新建的图书咨讯馆,通过3D虚拟导览系统,读者可以了解该馆内部应用情况,用户通过键盘和鼠标的简单操作来实现虚拟场景中角色、楼层等的转换。图书排架呈现的图书精度是比较理想的,但仅停留在虚拟现实演示功能层面上。
[0005] 国内研究状况与水平,以国家数字图书馆二期工程为代表。虚拟现实应用可引导读者在图书馆建筑内部漫游,方便读者了解图书馆图书分布、功能和服务,例如阅览区面、书库、多媒体阅览室、服务台等,同时呈现图书馆图书资源的流动等。也可在虚拟现实体验区内体验虚拟现实馆区游览和虚拟现实阅读站,不需要虚拟现实的手套、头盔、操纵杆等设备。这种虚拟现实应用还属于“漫游式虚拟现实图书馆”,功能特征也是环境演示型的。
[0006] 目前,国外大型图书馆自动化管理系统ALEPH、INNOPAC和SIRSI的开发商均没有考虑建设虚拟现实图书馆,更没有实现图书自动排架功能;国内的图书馆自动化管理系统汇文、DLAS、北邮等也同样没有开发图书自动排架系统的案例。
[0007] 个别大学自主开发的虚拟现实图书馆系统包含有限的图书自动排架静态功能,只能在OPAC中显示部分图书所在的书架信息,不能实时映射最新图书排架信息,无法解决动态同步问题。在OPAC系统中检索图书虽可获取书架信息,但不能获得动态的图书信息,所以,这类图书自动排架系统只能呈现静态图书信息,不能实现动态同步,不是真正意义的图书自动排架系统。
[0008] 目前,在全球范围内,不论是高校图书馆,还是公共图书馆,实现图书馆导览及图书基本定位功能的虚拟现实图书馆目前还很少,而基于可视化的虚拟现实图书馆自动排架系统更是鲜有报告,最相似(相近)解决方案有以下几种:
[0009] 1.图书馆物理建筑的虚拟展示引导读者在图书馆建筑内部漫游,主要作用是更好地方便读者了解图书馆图书分布、功能和服务,例如阅览区面、书库、多媒体阅览室、服务台等,同时呈现图书馆图书资源的流动等。国家数字图书馆二期工程就是典型案例。它建立一个虚拟现实(Virtual Reality)体验区,在虚拟现实体验区内展示的主要是虚拟现实馆区游览和虚拟现实阅读站两个部分,用摄像的视频信息判断人的动作,不需要虚拟现实的手套、头盔、操纵杆等设备。
[0010] 这种通过网络来进行的仿真环境展示,除了有影像、声音、文字来辅助浏览进程外,可以在不受时间及地点的限制下来浏览图书馆主要功能,每个读者可以根据自己的需求,通过局域网(校园网)或广域网媒介来熟悉图书馆的虚拟物理环境。
[0011] 然而,国家图书馆二期工程是以演示功能为主、辅以一定量的交互功能,且交互功能也仅限于虚拟现实场景体验而已,与基于虚拟技术的可视化图书馆集成化管理系统存在相当差距。
[0012] 2.图书馆资源查询、检索与导航展示,将现有的物理书架、报刊架等与图书馆拥有的馆藏纸质资源,通过虚拟现实进行表现,呈现给读者的是一个仿真的、三维的图书馆书库集合,完全按照图书馆书库和报刊库等的物理排架规则(中图法或排架号)进行展示,读者可以查询到所需图书所在的书架位置。
[0013] 新加坡国立大学图书馆应用具有代表性:应用Google Earth技术制作出用于图书馆内部漫游的虚拟现实图书馆,介绍图书馆概貌,具有查询图书定位到书架的初级化“3D图书搜索”功能。
[0014] 新加坡国立大学图书馆虚拟现实的整体应用效果属于虚拟现实技术应用的初级化应用阶段,该应用水平一定程度上代表了当今全球高校图书馆虚拟现实技术应用的最高水平,但是该虚拟现实图书馆仅能实现图书所在三维空间的基本定位,无法以直观易用方式的动态显示每一排书架的图书,仅达到“书架级”精度。
[0015] 目前,全球具有代表性、寥寥可数的高校图书馆虚拟展示介绍都是以2D形式来表现的。读者只能从查询系统中获得图书所在的书架位置,不能自由地选择观察点,因而限制了读者获取文献信息资源的方式。
[0016] 3.图书自动排架位图定位。目前,国外的大型图书馆自动化管理系统ALEPH、INNOPAC和SIRSI的开发商均没有考虑建设虚拟现实图书馆,更没有实现图书自动排架功能;国内的图书馆自动化管理系统汇文、DLAS、北邮等也同样没有开发图书自动排架系统的案例。
[0017] 通过局域网(校园网)或广域网媒介来认识、熟悉、使用图书馆的虚拟现实环境,即通过网络来进行的仿真环境展示,在不受时间及地点的限制下来浏览与使用图书馆馆藏资源,目前在全球范围内,不论是高校图书馆,还是公共图书馆,均是一个空白点。据文献信息资料检索,国际最新研究进展主要体现在:虚拟现实技术应用于图书馆物理环境与内外建筑环境渲染,实现虚拟图书馆漫游和图书馆使用导览为主的功能展示,以及图书馆建筑结构和书架、桌椅等物理设备外型结构的3D三维立体虚拟显示和基于传统2D二维“搜索”方式的图书简单定位功能,这种应用是典型的“漫游式虚拟现实图书馆”,功能特征主要是环境演示型。运用2D二维“搜索”方式获得图书简单定位功能的虚拟现实技术在图书馆领域应用的很少见报道,采用基于虚拟现实的图书馆自动排架系统更是没有。

发明内容

[0018] 为了解决虚拟现实图书馆的技术难点,有必要提供一种图书自动排架的实现方法。
[0019] 本发明解决现有的技术问题所采用的技术方案为:一种虚拟现实图书馆自动排架系统的实现方法,包括建立图书书目数据库数据增长模型、图书信息同步、图书自动排架并展示,其中,图书自动排架并展示包括图书立面切割和图书自动排架算法。
[0020] 本发明虚拟现实图书馆自动排架系统的实现方法中,建立图书书目数据库数据增长模型包括根据书目数据离散分布与书目数据增长模型曲线图建立增长模型。
[0021] 本发明虚拟现实图书馆自动排架系统的实现方法中,书目数据库书目数据增长规r(t– t0)律为N(t)= N0 e ,t表示时间,N 表示对应时间的图书量。
[0022] 本发明虚拟现实图书馆自动排架系统的实现方法中,图书信息同步包括建立图书信息数据库图书信息表,图书信息数据库图书信息表包括图书书目信息数据库表和图书状态数据库表。
[0023] 本发明虚拟现实图书馆自动排架系统的实现方法中,图书自动排架并展示包括图书自动排架和图书自动排架展示算法。
[0024] 本发明虚拟现实图书馆自动排架系统的实现方法中,图书自动排架时,首先通过图书信息传递函数连接图书馆自动化管理系统,实时同步图书相关典藏信息、图书状态和图书书目数据等形成图书信息管理表;然后将以上数据输入到自动排架系统中,按照排架规则,结合图书书架信息进行排架初始化,并按每行书架图书的册数确定每行索取号的起止号,输出形成书架信息表,包括书架号、行号、索取号起和索取号止等信息;最后将此信息输出至图书排架信息表中。
[0025] 本发明虚拟现实图书馆自动排架系统的实现方法中,图书自动排架展示时,根据单册图书封面图片和图书基本属性,通过图书立面切割方法,结合图书书目信息形成图书立面图片,进而建模生成单册图书模型,建立图书模型数据库。
[0026] 本发明虚拟现实图书馆自动排架系统的实现方法中,图书自动排架还包括建立图书信息管理表、图书封面图片数据库、图书立面图片数据库、图书模型数据库、书架信息表和图书排架信息表。
[0027] 本发明虚拟现实图书馆自动排架系统的实现方法中,排架初始化包括:开始、选择图书典藏地点、计算分类图书增长率、确定书架分类容积率、计算分类图书平均页码、计算分类图书书架行数、根据现有书架数量调整分类图书容积率、图书初始排架完成、记录书架信息、图书模型排架、图书模型排架调整、记录书架信息、图书模型标记图书状态、结束。
[0028] 本发明虚拟现实图书馆自动排架系统的实现方法中,图书自动排架展示包括图书上架与下架,图书上架与下架包括:开始;扫描输入单册图书登录号;图书单册是否新书,是则继续,否则返回扫描输入单册图书登录号;单册新书典藏信息(典藏地址、卷期),并由单册新书基本属性(索取号、控制号、页码、开本、装帧)得到单册新书模型;计算单册新书物理典藏地点及显示;单册新书是否手工上架,是则继续流程,否则返回计算单册新书物理典藏地点及显示;新书单册所述物理典藏地点单行书架计算合成;图书馆物理典藏地点单排书架展示;最后一本单册是否新书,是则流程结束,否则返回扫描输入单册图书登录号。
[0029] 相较于现有技术,本发明虚拟现实图书馆自动排架系统的实现方法,主要设计图书自动排架系统,建立图书数据实时映射,实现图书动态同步排架,进而连接图书馆自动化管理系统;在此基础上建立虚拟场景与物理场景一致的虚拟现实图书馆,一方面满足场景浏览、场景互动、图书定位与浏览等功能,另一方面在虚拟场景中以图书为最小管理单元,集成并实现图书可视化管理功能,使得传统图书馆自动化管理系统整体性升级为“基于图书可视化管理的虚拟现实图书馆系统”。首先,本发明突破现有虚拟图书馆中图书管理的精度,从三维的图书地点逐级定位单行书架、单册图书,将来还可以进一步深入到图书内容,达到“内容级”的展示精度。其次,采用实时同步算法,使图书自动化管理系统书目数据始终与虚拟现实图书馆系统数据同步,图书排架呈现动态方式而实现两个数据库数据完全同步和保持一致,达到“图书级”的排架精度。突破现有“虚拟图书馆”系统书目数据的虚拟现实排架只能采用静态模式,即虚拟图书馆数据库与图书自动化管理系统数据库中的数据不具有自动同步和映射关系、不能实现实时动态同步显示书籍的借阅状态和馆藏情况(包括新增图书、丢失图书)等缺陷。再者,将支持读者在虚拟现实场景中实现图书在线借阅、电子资源阅览等服务功能。读者可直接选取所需图书进行借阅,系统自动更新该书状态,实时提交外借图书数据。为读者借阅带来极大方便;同时也可在线阅读所需图书的电子版本,身临其境地访问虚拟图书馆内的各类多载体资源和在线借阅等服务。

附图说明

[0030] 图1是是图书自动排架的系统数据流程示意图。
[0031] 图2是图书封面图片及切片示意图。
[0032] 图3是图书立面示意图。
[0033] 图4是图书模型生成数据流程示意图。
[0034] 图5是图书自动排架的排架初始化流程示意图。
[0035] 图6是图书上架流程图与上架流程示意图。
[0036] 图7是图书馆自动化管理系统、图书自动排架系统和虚拟现实场景系统的关系示意图。
[0037] 图8是虚拟现实图书馆平台层次结构示意图。
[0038] 图9是图书自动排架系统的子系统示意图。

具体实施方式

[0039] 下面结合附图和本发明的实施方式作进一步详细说明。
[0040] 本发明虚拟现实数字图书馆自动排架系统的实现方法包括:
[0041] (1)建立虚拟图书书目数据库数据增长模型。
[0042] 虚拟图书书目数据库数据增长模型研究是解决物理书目数据库与虚拟现实书目数据库数据同步的理论基础,成为图书自动排架方法与各子系统的基础数学模型。该模型的建立过程中,增加现实编目环境中各相关因素,诸如供书商供应链变化、编目数据季节性变化、编目人员因素等,使得前期研究的理想数学模型成为考虑各干扰因素的实用数学模型。
[0043] (2) 虚拟图书书目数据同步机制和方法,其包括同步机制、实现方法和模型操作函数和算法。
[0044] 本项目研究,拟在前期研究的基础上进一步研究利用图书馆标准协议Z39.50和OAI,实现图书信息与状态信息以上两个数据库表与图书馆自动化管理系统之间的图书数据的同步实验,为图书自动排架方法建立相关操作函数和方法模型算法,进而解决虚拟现实书目数据库与物理书目数据库之间的同步映射,实现与图书馆自动化管理系统中的图书实时编目数据同步。
[0045] (3) 图书立面切割。
[0046] 在前期研究的基础上,从批处理角度从图书信息管理子系统中批量获取图书页码、书名、作者和出版社等信息;结合图书封面图片,采用图书立面生成方法,分别形成图书封面切片、图书立面图片;最后将以上图片存入图书模型数据库中。
[0047] 根据图书的立面大多与封面左侧图形相近的特点,在图书封面左侧切取一条宽度为图书厚度的图片(与图书封面图片比例对应)作为图书立面的背景,然后调用图书信息管理子系统中的书名、作者、出版社信息,竖向分布于图书立面。
[0048] (4) 虚拟图书自动排架。
[0049] 虚拟图书自动排架系统需要结合各个图书馆的实际工作流程、书库图书更新周期、书架高度、书架宽度等因素,综合考虑,设计图书自动排架方法。基于虚拟现实图书馆图书自动排架系统的实现方法是本项目研究的关键所在。
[0050] 重点拟考虑图书自动排架的相关因素有:索取号的相对连贯性;非常规尺寸的图书横排摆放和书架间距调整;图书排架时需考虑不同版本的图书一起摆放;图书增长的需求需考虑,可参考加权值;特殊空间和特殊的排架周期,例如新书架的排架;图书排架变更的周期,例如常规书架变更周期、密集书库变更周期、新书架变更周期、特殊空间变更周期等;结合图书典藏上架的实际工作流程设计,不同图书馆的工作流程要求具有灵活性;实际排架中的灵活调整,例如艺术类图书有大有小,需要将大本图书集中横排、小本图书集中;单册图书的实际状态,是否借出、是否归还、是否正在典藏移送中等。
[0051] 本发明虚拟现实图书馆自动排架系统的实现方法包括:建立图书书目数据库数据增长模型、图书信息同步、图书自动排架并展示。其中,图书自动排架并展示包括图书立面切割和图书自动排架算法。
[0052] (1)建立图书书目数据库数据增长模型
[0053] 图书书目即图书目录,揭示图书的基本信息,并按一定的顺序编排而成。不同的图书馆图书书目数量从几十万条到几百万条不等。
[0054] 图书书目数据库增长规律直接影响着书目数据在虚拟现实图书馆中的同步数据更新,建立书目数据库数据增长模型可直接服务于图书自动排架方法与各子系统。
[0055] 根据图书书目数据库更新的图书书目数据在每学年的增长规律符合任一单位时刻书目数据的增长率与当时的书目数据总量成正比的假设,并且书目数据与每学年度月份的离散数据分布相吻合。
[0056] 考虑到同步影响书目数据库数据增长的因素还包括供书商供应链变化、编目数据季节性变化、编目人员因素等,为化简起见,影响书目数据与同步映射数据增长的其他等因素设为常数,所示微分方程的特解为书目数据库书目数据增长规律,如下式
[0057] N(t)= N0 er(t – t0)
[0058] 注:假设 t = t0 时的书目数据总量为N0。
[0059] 当 0 ≤ t < 7 时 t: =t
[0060] 当 9 ≤ t ≤12, t: =t -7
[0061] 根据书目数据离散分布与书目数据增长模型检验,书目数据库自然增长在每学年第一学期 9 月至第二年 1 月的增长规律与本模型增长规律拟合效果较好,符合第一个正态分布;第二学期 1月到7月为第二个正态分布周期。基于高校图书馆采编部门的工作规律与本模型有较好的拟合度,选择书目数据库数据增长模型为虚拟现实图书馆同步映射数据提供直接支撑。
[0062] 图书书目增长模型建立后,还必须再次深入研发,针对近几年购买图书按照中国图书分类法细分后,进行数据挖掘,并结合图书日常排架工作,确定增长率比较高的图书分类,并设定图书书目增长率,用于图书自动排架时的一个重要参数予以考虑,实现图书自动排架的可视化与有序化,规范管理图书日常排架工作。
[0063] 虚拟现实图书馆与书目数据库之间的数据调用及同步映射对图书馆优化管理与提供真正意义上的一站式服务是非常必需的。建立书目数据库增长模型是实现系统间数据共享与同步映射的关键问题之一。
[0064] (2) 图书信息同步的机制和实现方法
[0065] 图书信息同步包括建立图书信息数据库表如下:
[0066] 图书信息数据库表包括两个数据库表:BookMARC(图书书目信息)数据库表和Bookstaus(图书状态)数据库表。
[0067] BookMARC 库结构
[0068] BookMARC {
[0069] Rec_key,int; 图书控制号
[0070] Call_no, char(30); 图书索取号
[0071] ISBN_ISSN, char (20); ISBN或ISSN号
[0072] Title,varchar2(100) ; 题名
[0073] Author,varchar2(100) ; 著者
[0074] Pubisher, char (40) ; 出版社
[0075] Volume,char (20) ; 部次号
[0076] CLC ,char(20) ; 中图分类号
[0077] Page,int; 页码
[0078] Bookformat,char(10); 开本
[0079] LSizeofbook, int; 开本(长)
[0080] KSizeofbook,int; 开本(宽)
[0081] Url1, varchar2(200) ; 书生电子图书链接
[0082] Url2, varchar2(200) ; 超星电子图书链接
[0083] Url3, varchar2(200) ; 附书光盘文件链接
[0084] Url4, varchar2(200) ; 其他电子资源链接
[0085] Summary,varchr2(255) ; 图书简介
[0086] Content,varchr2(255) ; 图书目录
[0087] Booktype,char(4); 图书类型:新增;剔丢
[0088] Timestamp,time; 书目信息更新时间
[0089] }
[0090] Bookstatus库结构
[0091] Bookstaus {
[0092] Rec_key ,int; 图书控制号
[0093] Barcode,char(10); 图书条码号
[0094] Volume,char(20); 部次号
[0095] Place,char(40); 典藏地
[0096] Status,char(10); 图书状态
[0097] }
[0098] 为实现以上两个数据库表与图书馆自动化管理系统之间的图书数据同步,需要在图书自动排架方法中考虑建立相关操作函数,利用图书馆标准协议Z39.50和OAI,同步图书馆自动化管理系统中的图书实时编目数据。
[0099] (3)图书自动排架并展示
[0100] 为达到可视化的虚拟图书馆的图书自动排架效果,需要采用图书自动排架并展示。
[0101] 图书自动排架时,首先通过图书信息传递函数连接图书馆自动化管理系统,实时同步图书相关典藏信息、图书状态和图书书目数据等形成图书信息管理表;然后将以上数据输入到自动排架方法中,按照排架规则,结合图书书架信息进行自动排架初始化,并按每行书架图书的册数确定每行索取号的起止号,输出形成书架信息表,包括书架号、行号、索取号起和索取号止等信息;最后将此信息输出至图书排架信息表中。
[0102] 图书自动排架展示时,根据单册图书封面图片和图书基本属性,通过图书立面切割方法,结合图书书目信息形成图书立面图片,进而建模生成单册图书模型,建立图书模型数据库。
[0103] 在完成图书自动排架并展示的基础上,通过虚拟现实技术展示出图书馆物理典藏地点书架、最后完成图书的虚拟排架。
[0104] 请参阅图1,是图书自动排架的系统数据流程图。图书自动排架的系统数据包括分别建立图书信息管理表、图书封面图片数据库、图书立面图片数据库、图书模型数据库、书架信息表和图书排架信息表等,其数据库属性列表如表1所示。
[0105] 表1 图书自动排架系统相应数据库属性列表
[0106]数据库名称 数据库说明
图书信息管理表 实时存取图书馆图书书目信息(控制号、题名、作者、卷期、ISBN、页码、开本、出版社、索取号和登录号等)和状态信息(包括已上架、出借和加工中等)
图书封面图片数据库 管理图书封面图片,包含图书控制号、ISBN、登录号等信息图书立面图片数据库 管理图书立面图片,包含图书控制号、ISBN、登录号等信息图书模型数据库 管理图书模型,包含图书控制号、ISBN、登录号等信息
书架信息表 管理图书书架,记录每一行书架所在的书架号、行号、索取号的起止号图书排架信息表 管理图书排架信息,记录每行书架内图书的相对排架位置信息[0107] 具体的,图书自动排架展示包括图书立面切割 。图书立面切割包括建立图书模型数据管理子系统,其包括两个数据库:图书封面图片数据库和图书立面图片数据库。
[0108] 其中图书封面图片数据可以采用以下三种方法获取:
[0109] 现有的图书馆自动化管理系统中已提供部分图书的图片,但是需要统一图片规格、尺寸;
[0110] 图书馆已购买的超星电子图书和书生电子图书中也提供部分图书图片,同样需要统一规格;
[0111] 针对以上两种渠道均无法获取的图书封面图片,图书馆馆员可以通过扫描、照相和网上检索的方式获得。
[0112] 图书立面图片目前没有厂商提供,需要自行采集;而采集图书立面图片的工作量太大,采集的图片会降低图书模型的显示效果,因此我们采用模拟图书真实立面的方法来生成图书立面图片:从图书信息管理子系统中获取图书页码、书名、作和出版社等信息;结合图书封面图片,采用图书立面生成方法,分别形成图书封面切片、图书立面图片;最后将以上图片存入图书模型数据库中。
[0113] 根据图书的立面大多与封面左侧图形相近的特点,在图书封面左侧切取一条宽度为图书厚度的图片(与图书封面图片比例对应)作为图书立面的背景,然后调用图书信息管理子系统中的书名、作者、出版社信息,竖向分布于图书立面。
[0114] 首先,根据已有的图书封面图片,从一侧开始(例如左侧)截取与书籍厚度相等宽度的图片(根据图书封面图片尺寸、图书页码、图书开本计算获得图书厚度**cm、图书立面图片宽度**px),如图2所示,从封面截取出等比例宽的图片作为背景。
[0115] 调用从图书馆自动化管理系统中获取的书名、出版社、作者等信息,分别形成不同的文本图层,然后与背景层合并,最终图书立面图片如图3所示。请参阅图4,是图书模型生成数据流程示意图。
[0116] 图书自动排架则需要结合各个图书馆的实际工作流程、书库图书更新周期、书架高度、书架宽度等因素,综合考虑,设计图书自动排架方法。
[0117] 图书排架时需考虑的因素有:索取号的相对连贯性,例如TP312.11/L123的图书要排放在一起,不要分成两行;大类的开始需要考虑从整数行开始;考虑非常规尺寸的图书的横排摆放;考虑非常规尺寸图书的书架间距调整;图书排架时需考虑不同版本的图书一起摆放;图书增长的需求需考虑,可参考加权值;需考虑特殊空间和特殊的排架周期,例如新书架的排架;考虑图书排架变更的周期,例如常规书架变更周期、密集书库变更周期、新书架变更周期、特殊空间变更周期等;需结合图书典藏上架的实际工作流程设计,不同图书馆的工作流程可能不一样;要求具有灵活性;需考虑实际排架中的灵活调整,例如艺术类图书有大有小,需要将大本图书集中横排、小本图书集中;会导致不一定按照严格的索取号排列;需考虑单册图书的实际状态,是否借出、是否归还、是否正在典藏移送中等。
[0118] 因此,在图书自动排架方法中将设计图书增长率、书架容积率等参数,按照各个图书馆的分类体系、典藏地和书架数量,分别进行自动排架计算。
[0119] 请参阅图5,是图书自动排架的排架初始化流程示意图。
[0120] 排架初始化流程包括:开始→选择图书典藏地点→计算分类图书增长率→确定书架分类容积率→计算分类图书平均页码→计算分类图书书架行数→根据现有书架数量调整分类图书容积率→图书初始排架完成→记录书架信息→图书模型排架→图书模型排架调整→记录书架信息→图书模型标记图书状态→结束。
[0121] 首先利用图书信息传递函数将图书信息表与图书馆自动化管理系统中的图书书目信息进行同步,然后根据现有图书的典藏信息、基本信息和状态信息进行初始化处理,图书排架初始化的流程如图5所示。根据图5所示的流程图进行图书排架初始化算法编程,根据现有物理馆藏排架位置进行初始化处理,实现全部书目数据的同步映射。
[0122] Procedure bookshell_init();
[0123] BEGIN
[0124] DECLARE @ Bookshell_noint, @ Col int, @ Row int
[0125] DECLARE @ callno_first varchar(20), @ callno_end varchar(20),[0126] DECLARE position_cursor CURSOR FOR
[0127] SELECT Bookshell_no, Row, Col, callno_first,callno_end FROMbookposition
[0128] OPEN positon_cursor
[0129] FETCH NEXT FROM position_cursor INTO @ Bookshell_no, @ Col, @ Row, @ callno_first,
[0130] @ callno_end
[0131] WHILE @@FETCH_STATUS = 0
[0132] BEGIN
[0133] Update bookshell set bookshell_no=@ Bookshell_no,col=@ Col,row=@ Row where
[0134] Call_no>=@ callno_first and call_no<=@ callno_end
[0135] FETCH NEXT FROM position_cursor INTO @ Bookshell_no, @ Col, @ Row, [0136] @ callno_first, @ callno_end
[0137] END
[0138] CLOSEposition_cursor
[0139] DEALLOCATE position_cursor
[0140] END
[0141] 书目同步更新进程发现推送的更新记录,则进行编目在排架库书目或图书复本增删操作,同时确定复本在书架中的位置,如果超出预定书架的长度,则自动排架,并通知相应变化的书架信息给管理员,进而实现图书上架的数据映射流程。
[0142] 图书自动排架展示包括图书上架与下架,图书上架流程图与上架流程如图6所示,包括:开始;扫描输入单册图书登录号;图书单册是否新书,是则继续,否则返回扫描输入单册图书登录号;单册新书典藏信息(典藏地址、卷期),并由单册新书基本属性(索取号、控制号、页码、开本、装帧)得到单册新书模型;计算单册新书物理典藏地点及显示;单册新书是否手工上架,是则继续流程,否则返回计算单册新书物理典藏地点及显示;新书单册所述物理典藏地点单行书架计算合成;图书馆物理典藏地点单排书架展示;最后一本单册是否新书,是则流程结束,否则返回扫描输入单册图书登录号。
[0143] 图书上架流程方法编程如下:
[0144] Procedure bookshell_add();
[0145] BEGIN
[0146] DECLARE @Bookshell_no int, @Row int, @Col int,
[0147] @Rec_key int, @Call_no varchar2(100), @isbn_issn varchar(18), [0148] @barcode char(30), @title varchar2(100) , @author varchar2(100)[0149] @CLC varchar(20), @Page int, @lSizeofbook int , @klSizeofbook int , @url1 varchar2(100) @url2 varchar2(100) @url3 varchar2(100), @summary varchr2(255), @content varchr2(255)
[0150] DECLARE @booksellno1 int,@row1 int ,@col1 int,@num int
[0151] DECLARE add_cursor CURSOR FOR
[0152] SELECT * FROM bookadd
[0153] OPEN add_cursor
[0154] FETCH NEXT FROM add_cursor INTO @Rec_key ,@Call_no, @isbn_issn,@barcode,@title,@author, @pubisher, @Volume, @CLC , @Page, @lSizeofbook, @kSizeofbook, @url1, @url2, @url3, @summary, @content, @booktype
[0155] WHILE @@FETCH_STATUS = 0
[0156] BEGIN
[0157] @bookshellno=0
[0158] @row=0
[0159] @col=0
[0160] Select @bookshellno=bookshell_no,@row=row from bookposition where callno_first>=@call_no and callno_end<=@call_no
[0161] If (@bookshellno>0 and @row>0) then
[0162] Begin
[0163] Select @col=col from bookshell where bookshell_no=@bookshellno and row=@row
[0164] If @col=0 then
[0165] Begin
[0166] Update bookshell set Bookshell_no =@Bookshell_no, Row =@Row1, col=1, Rec_key =@Rec_key, Call_no =@Call_no, isbn_issn =@isbn_issn, barcode =@barcode, title =@title , author =@author CLC =@CLC, Page =@Page, sizeofbook=@Sizeofbook, url1=@url1 url2=@url2 , url3=@url3, ummary=@summary, content=@content [0167] End
[0168] Else
[0169] Begin
[0170] Update bookshell set col=col+1 where bookshell_no=@bookshellno and row=@row and row>@row
[0171] Update bookshell set Bookshell_no =@Bookshell_no, Row =@Row1, col=@Col1 , Rec_key =@Rec_key, Call_no =@Call_no, isbn_issn =@isbn_issn, barcode =@barcode, title =@title , author =@author CLC =@CLC, Page =@Page, sizeofbook=@Sizeofbook, url1=@url1 url2=@url2 , url3=@url3, ummary=@summary, content=@content Where bookshell_no=@bookshellno and row=@row and row=@row
[0172] End
[0173] Endif
[0174] Endif
[0175] FETCH NEXT FROM add_cursor INTO @Rec_key ,@Call_no,
[0176] @isbn_issn,@barcode,@title,@author, @pubisher, @Volume, @CLC , @Page, @lSizeofbook, @kSizeofbook, @url1, @url2, @url3, @summary, @content, @booktype [0177] END
[0178] CLOSE add_cursor
[0179] DEALLOCATE add_cursor
[0180] END
[0181] 虚拟图书初始化排架方法程序如下:
[0182] package com.jspdev.ch13; import com.jspdev.util.*; import java.sql.*; import javax.sql.*; import java.io.*; import oracle.jdbc.driver.OracleResultSet; import oracle.sql.*;
[0183] public class bookshell
[0184] {
[0185] Connection conn ;
[0186] public bookshell()throws Exception { DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
[0187] conn=DriverManager.getConnection(“jdbc:oracle:thin:system@localhost:1521:shitou”
[0188] ,”system”,”manager”);
[0189] }
[0190] public void bookshelllineint(int i,int j)throws Exception {[0191] Statement stmt=con.createStatement();
[0192] ResultSet rs = stmt.executeQuery(select rec_key,title,author,publisher,page,Lsizeofbook,
[0193] Ksizeofbook from Bookshell where bookshell_no=i and row=j)
[0194] Boolean more = rs.next()
[0195] while (more)
[0196] {
[0197] Int ctrlno=rs.getint(“rec_key”)
[0198] String title_n=rs.getstring(“title”)
[0199] String publisher _n=rs.getstring(“publisher”)
[0200] String author _n=rs.getstring(“author”)
[0201] Int page_n=rs.getint(“page”)
[0202] Int long_n= rs.getint(“Lsizeofbook”)
[0203] Int kuan_n= rs.getint(“ksizeofbook”)
[0204] String query=”select * from bookstatus where rec_key=ctrlno”;
[0205] Stmt.execute(query);
[0206] Where (true)
[0207] {
[0208] String barcode _n=stmt.getint(barcode);
[0209] String Place _n=stmt.getint(Place);
[0210] String Status _n=stmt.getint(Status);
[0211] String volume_n=stmt.getint(volume);
[0212] }
[0213] More=rs.next()
[0214] }
[0215] Len=len+page/250
[0216] CreateBookshelf(0, ctrlno, len, long_n, kuan_n)
[0217] Conn.close();
[0218] } }
[0219] 本发明虚拟现实图书馆自动排架系统的实现方法是虚拟现实图书馆功能实现的核心,而虚拟现实图书馆包括图书馆自动化管理系统、图书自动排架系统和虚拟现实场景系统三部分内容。
[0220] 实现虚拟图书馆可视化管理建设虚拟现实图书馆,需要在现有的图书馆自动化管理系统基础上,采用虚拟现实技术,针对海量图书进行建模,分别开发图书馆书架管理子系统和图书模型管理子系统,运用图书自动排架系统完成图书模型排架,结合图书馆虚拟现实场景系统,通过实时数据交换,定位和动态显示图书馆书库内每一排书架上的每一册图书,同时将每一册纸质图书与相关电子资源链接,引导读者在线阅读。现有的图书馆自动化管理系统、图书自动排架系统和虚拟现实场景系统的关系如图7所示。图书馆书架管理子系统构成图书馆虚拟现实场景系统,并且和图书馆自动化管理系统、图书模型管理子系统一起形成图书自动排架系统;图书馆虚拟现实场景系统和图书自动排架系统形成虚拟现实图书馆。
[0221] 请参阅图8,是虚拟现实图书馆平台层次结构示意图。虚拟现实图书馆的层次结构主要由硬件基础层、系统软件层、数据层、应用层和表现层组成。表现层包括虚拟图书馆及其统一检索、图书导航、资源阅读、资源获取等。应用层包括如ALEPH500、超星电子图书、书生电子图书、中国期刊网、维普科技期刊、其他中文电子资源;外文电子图书全文数据库、外文电子期刊全文数据库;图书封面图片库管理子系统、图书立面图片管理子系统、图书模型管理系统;图书自动排架系统、图书馆书架管理子系统。数据层包括图书目录数据库APEH500、图书排架书目数据库、图书封面图片数据库、图书立面图片数据库、图书模型数据库、图书全文数据库。系统软件层包络WINDOWS、Linux、建模工具软件。系统硬件层包括ALEPH服务器、图片服务器、模型服务器、图书排架服务器以及PC等。网络基础层包括校园网网络、公网网络。
[0222] 请参阅图9,图书自动排架系统包含以下子系统:图书信息管理子系统、图书模型数据管理子系统、图书书架管理子系统、图书自动排架系统子系统、图书排架标签打印子系统、图书排架显示子系统和图书上架子系统等。下面对上述子系统分别说明。
[0223] 1)图书信息管理子系统
[0224] 参考图书馆国际标准,例如Z39.50和OAI,利用现有的ALEPH系统的Z39.50、OAI接口,通过图书自动排架系统的图书信息同步函数对ALEPH系统进行元数据收割,生成图书信息管理子系统的图书信息。
[0225] 2)图书模型数据管理子系统
[0226] 图书模型数据管理子系统包含两个数据库:图书封面图片数据库和图书立面图片数据库。图书立面图片目前没有厂商提供,需要自行采集;而采集图书立面图片的工作量太大,采集的图片会降低图书模型的显示效果,因此我们采用模拟图书真实立面的方法来生成图书立面图片:从图书信息管理子系统中获取图书页码、书名、作和出版社等信息;结合图书封面图片,采用图书立面生成算法,分别形成图书封面切片、图书立面图片;最后将以上图片存入图书模型数据库中。
[0227] 3)图书书架管理子系统
[0228] 图书书架管理子系统包括书架添加、书架删除、书架尺寸调整、书架位移共四个基本模块。此子系统实现书架物理位置标定,供图书自动排架子系统存取书架数据。
[0229] 4)图书自动排架系统子系统
[0230] 图书自动排架计算子系统包括以下几个子模块:图书排架初始化、图书排架手工调整、图书局部自动排架等。
[0231] 图书自动排架子系统是非常复杂的,需要结合各个图书馆的实际工作流程、书库图书更新周期、书架高度、书架宽度等因素,综合考虑,设计图书自动排架系统。
[0232] 5)图书排架标签打印子系统
[0233] 图书排架标签打印子系统实现书架标签打印和图书排架标签打印,并分别粘贴在所在图书书架的横梁上、单册图书的侧面上。这样处理后,可以更直观地方便图书馆馆员整理图书排架、方便读者查找定位图书。
[0234] 6)图书排架显示子系统
[0235] 图书排架显示子系统包含以下模块:各楼层图书排架显示、典藏书库排架显示、单列书架显示、单行书架显示等。
[0236] 7)图书上架子系统
[0237] 图书上架子系统主要用于图书馆馆员手工上架图书。
[0238] 因此图书上架子系统包括以下模块:读者归还图书上架、移送新书上架、典藏变更图书上架图书、丢失图书标记、下架图书标记和图书批量倒架等。
[0239] 相较于现有技术,相较于现有技术,本发明虚拟现实图书馆自动排架系统的实现方法,设计图书自动排架系统,连接图书馆自动化管理系统,建立图书数据实时映射、实现图书动态同步排架,进而连接图书馆自动化管理系统;在此基础上建立虚拟场景与物理场景一致的虚拟现实图书馆,一方面满足场景浏览、场景互动、图书定位与浏览等功能,另一方面在虚拟场景中以图书为最小管理单元,集成并实现图书可视化管理功能,使得传统图书馆自动化管理系统整体性升级为“基于图书可视化管理的虚拟现实图书馆系统”。首先,本发明突破现有虚拟图书馆中图书管理的精度,从三维的图书地点逐级定位单行书架、单册图书,将来还可以进一步深入到图书内容,图书展示可达到“内容级”的展示精度。其次,采用实时同步算法,使图书自动化管理系统书目数据始终与虚拟现实图书馆系统数据同步,图书排架呈现动态方式而实现两个数据库数据完全同步和保持一致,使之达到“图书级”的排架精度。突破现有“虚拟图书馆”系统书目数据的虚拟现实排架只能采用静态模式的限制,即虚拟图书馆数据库与图书自动化管理系统数据库中的数据不具有自动同步和映射关系,不能实现实时动态同步显示书籍的借阅状态和馆藏情况,包括新增图书、丢失图书等。再者,将支持读者在虚拟现实场景中实现图书在线借阅、电子资源阅览等服务功能。读者可直接选取所需图书进行借阅,系统自动更新该书状态,实时提交外借图书数据。为读者借阅带来极大方便;同时也可在线阅读所需图书的电子版本,身临其境地访问虚拟图书馆内的各类多载体资源和在线借阅等服务。
[0240] 以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换算法,都应当视为属于本发明的保护范围。