• 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03
    • / 16
    • 下载费用:30 金币  

    重庆时时彩apk安卓系统: 三维模型验证码的实现方法及其装置.pdf

    关 键 词:
    三维 模型 验证 实现 方法 及其 装置
      专利查询网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    摘要
    申请专利号:

    CN201610697070.6

    申请日:

    2016.08.19

    公开号:

    CN106355072A

    公开日:

    2017.01.25

    当前法律状态:

    授权

    有效性:

    有权

    法律详情: 授权|||实质审查的生效IPC(主分类):G06F 21/36申请日:20160819|||公开
    IPC分类号: G06F21/36(2013.01)I 主分类号: G06F21/36
    申请人: 沈建国; 许秋儿; 袁楠
    发明人: 沈建国; 许秋儿; 袁楠
    地址: 310051 浙江省杭州市滨江区钱塘春晓花园16幢1单元1302室
    优先权:
    专利代理机构: 宁波江东全方专利商标事务所(普通合伙) 33242 代理人: 徐芙姗
    PDF完整版下载: PDF下载
    法律状态
    申请(专利)号:

    CN201610697070.6

    授权公告号:

    ||||||

    法律状态公告日:

    2019.02.22|||2017.03.01|||2017.01.25

    法律状态类型:

    授权|||实质审查的生效|||公开

    摘要

    一种三维模型验证码的实现方法及其装置,包括1)从模型库中随机选取一个三维模型作为原始模型,并且生成两组随机变换量;2)将目标变换量应用于原始模型形成目标模型,并将目标模型渲染成目标图片;3)将初始变换量应用于原始模型形成操作模型,并且客户端在两个区域内进行展示;4)用户通过交互操作改变操作模型的属性,使得操作模型的状态与目标图片一致,并且同时初始变换量通过交互操作生成最终变换量;5)将最终变换量与目标变换量进行比较。本发明的优点在于利用人类相比计算机在三维空间感知方面的优势,实现人与计算机的自动快速区分,规避或极大降低计算机通过图像识别技术与人工智能技术进行验证码破解的可能性。

    权利要求书

    1.一种三维模型验证码的实现方法,其特征在于:包括以下步骤:
    1)从模型库中随机选取一个三维模型作为原始模型,并且生成两组随机变换量,即一
    组初始变换量和一组目标变换量;
    2)将目标变换量应用于原始模型形成目标模型,并将目标模型渲染成目标图片;
    3)将初始变换量应用于原始模型形成操作模型,并且客户端在两个区域内进行展示,
    其中一个区域展示供客户操作的操作模型,另一个区域展示目标图片;
    4)用户通过交互操作改变操作模型的属性,使得操作模型的状态与目标图片一致,并
    且同时初始变换量通过交互操作生成最终变换量;
    5)将最终变换量与目标变换量进行比较,如果两者的差异在预定的目标差异阈值内,
    则返回验证通过,否则返回验证不通过。
    2.如权利要求1所述的三维模型验证码的实现方法,其特征在于:所述模型库中包括多
    种三维模型,在上述步骤1)前,还包括对模型库中的三维模型进行预处理的步骤,该步骤为
    将模型库中的所有三维模型中心分别平移至世界坐标原点并且保存回模型库。
    3.如权利要求1所述的三维模型验证码的实现方法,其特征在于:所述一组初始变换量
    和一组目标变换量均包含至少一种变换量,每一组所含的变换量的个数相同并且对应,所
    述变换量为旋转变换量、缩放变换量、平移变换量、材质变换量或颜色变换量。
    4.如权利要求1所述的三维模型验证码的实现方法,其特征在于:所述步骤1)中生成两
    组随机变换量的步骤包括以下步骤:1.1)生成一组初始变换量和一组初始目标变换量;
    1.2)生成随机数;1.3)根据初始变换量、初始目标变换量和随机数生成目标变换量。
    5.如权利要求1所述的三维模型验证码的实现方法,其特征在于:上述步骤1)中生成初
    始变换量和目标变换量后,判断两者之间的差异是否在预定的初始差异阈值内,如果是则
    重新生成。
    6.如权利要求4所述的三维模型验证码的实现方法,其特征在于:上述步骤1.1)中,还
    需要判断生成的初始变换量和初始目标变换量之间的差异是否在预定的中间差异阈值内,
    如果是则重新生成。
    7.实现权利要求1-6中任一项所述的三维模型验证码的实现方法的装置,其特征在于:
    包括变换量生成???302,602),用于生成一组初始变换量和一组目标变换量;
    渲染???303,603),用于将目标变换量应用于原始模型并且形成目标模型,并且渲染
    形成目标图片;
    渲染交互???304,604),将初始变换量应用于原始模型形成操作模型,并且将操作模
    型和目标图片显示在客户端,实现人机交互功能并且计算用户操作所产生的最终变换量;
    变换量比对???305,605),用于比较最终变换量与目标变换量的差异,如果差异在预
    定的目标差异阈值内,则返回验证通过,否则返回验证不通过。
    8.如权利要求7所述的装置,其特征在于:还包括用于存储三维模型的模型库,以及用
    于对模型库中的所有三维模型进行预处理步骤的模型初始化???301,601)。
    9.如权利要求7所述的装置,其特征在于:所述变换量生成???602)还包括用于产生
    随机数的随机数生成???6021),和用于生成目标变换量的变换量插值???6022)。
    10.如权利要求7所述的装置,其特征在于:所述变换量生成???302,602)、渲染???br />(303,603)和变换量比对???305,605)位于服务端,渲染交互???304,604)位于客户端。

    说明书

    三维模型验证码的实现方法及其装置

    技术领域

    本发明涉及一种验证码领域,特别是涉及一种三维模型验证码的实现方法及其装
    置。

    背景技术

    验证码作为一种人机自动区分技术,已成为互联网领域应用最广泛的安全技术之
    一。通过验证码可规避或降低一般的安全风险,如批量注册、自动发贴、暴力破解、恶意刷
    单、短信轰炸等。现有的验证码大致可分为三类:

    (1)图片验证码,图片验证码根据图片内容可分为字符型图片验证码和非字符型
    图片验证码。字符型图片验证码是一种最为常见的验证码,它以随机符号作为图片内容。该
    种验证码优点是简单直观,实施难度低。但是随着图像识别技术与人工智能技术的发展,字
    符型图片验证码破解率越来越高。如中国专利CN104283682A所公开的,即使通过添加干扰
    元素的方式加大破解难度,但依然难以兼顾安全性与用户体验,因此字符型图片验证码正
    在逐渐被其他验证码所替代。非字符型图片验证码一般选取已有图片作为验证码内容,因
    其图片内容各异,所以很难用图像识别技术进行破解。但非字符型图片验证码也存在一些
    缺陷,比如选取图片时需要借助人工筛选和处理,成本较高;图片数量有限,容易通过穷举
    遍历的方式进行破解,虽然可通过不断更新图片库的方式增强安全性,但同时也会增加人
    工成本。

    (2)语音验证码,语音验证码基本原理与字符型图片验证码相似,只是将信息的载
    体由图片替换成了语音,同样可通过语音识别技术或穷举法进行破解。

    (3)行为验证码,行为验证码是一种新型的验证码,根据复杂程度可分为简单行为
    验证码和复杂行为验证码。简单行为验证码主要通过点击和拖动方式完成验证,比如通过
    采集滑动滚动条或点选复选框时鼠标轨迹信息完成验证。简单行为验证码很容易通过程序
    模拟方式破解,所以安全性一般。复杂行为验证码通过用户网站访问时大量行为特征分析
    进行验证,虽然安全性较好,但因其需要根据系统自身业务特点建立完备的验证模型,实施
    复杂度较高。

    发明内容

    本发明所要解决的技术问题是提供一种实施简单,能够在提高验证码的抗破解能
    力的同时又能保证用户体验、并且不增加人工成本的三维模型验证码的实现方法和装置。

    本发明解决上述技术问题所采用的技术方案为:一种三维模型验证码的实现方
    法,其特征在于:包括以下步骤:

    1)从模型库中随机选取一个三维模型作为原始模型,并且生成两组随机变换量,
    即一组初始变换量和一组目标变换量;

    2)将目标变换量应用于原始模型形成目标模型,并将目标模型渲染成目标图片;

    3)将初始变换量应用于原始模型形成操作模型,并且客户端在两个区域内进行展
    示,其中一个区域展示供客户操作的操作模型,另一个区域展示目标图片;

    4)用户通过交互操作改变操作模型的属性,使得操作模型的状态与目标图片一
    致,并且同时初始变换量通过交互操作生成最终变换量;

    5)将最终变换量与目标变换量进行比较,如果两者的差异在预定的目标差异阈值
    内,则返回验证通过,否则返回验证不通过。

    为了便于旋转操作,所述模型库中包括多种不同样式的三维模型,在上述步骤1)
    前,还包括对模型库中的三维模型进行预处理的步骤,该步骤为将模型库中的所有三维模
    型中心分别平移至世界坐标原点并且保存回模型库。

    优选地,所述一组初始变换量和一组目标变换量均包含至少一种变换量,每一组
    所含的变换量的个数相同并且对应,所述变换量为旋转变换量、缩放变换量、平移变换量、
    材质变换量或颜色变换量。

    为了通过滑动条便于用户操作,所述步骤1)中生成两组随机变换量的步骤包括以
    下步骤:1.1)生成一组初始变换量和一组初始目标变换量;1.2)生成随机数;1.3)根据初始
    变换量、初始目标变换量和随机数生成目标变换量。

    为了防止操作模型与目标图片过于类似,上述步骤1)中生成初始变换量和目标变
    换量后,判断两者之间的差异是否在预定的初始差异阈值内,如果是则重新生成。

    为了防止操作模型与目标图片过于类似,上述步骤1.1)中,还需要判断生成的初
    始变换量和初始目标变换量之间的差异是否在预定的中间差异阈值内,如果是则重新生
    成。

    实现上述三维模型验证码的实现方法的装置,包括变换量生成???,用于生成一
    组初始变换量和一组目标变换量;

    渲染???,用于将目标变换量应用于原始模型并且形成目标模型,并且渲染形成
    目标图片;

    渲染交互???,将初始变换量应用于原始模型形成操作模型,并且将操作模型和
    目标图片显示在客户端,实现人机交互功能并且计算用户操作所产生的最终变换量;

    变换量比对???,用于比较最终变换量与目标变换量的差异,如果差异在预定的
    目标差异阈值内,则返回验证通过,否则返回验证不通过。

    优选地,还包括用于存储三维模型的模型库,以及用于对模型库中的所有三维模
    型进行预处理步骤的模型初始化???。

    优选地,所述变换量生成??榛拱ㄓ糜诓婊乃婊赡??,和用于
    生成目标变换量的变换量插值???。

    为了防止客户端能够截获目标变换量信息而破解验证码,所述变换量生成???、
    渲染??楹捅浠涣勘榷阅?槲挥诜穸?,渲染交互??槲挥诳突Ф?。

    与现有技术相比,本发明的优点在于利用人类相比计算机在三维空间感知方面的
    优势,实现人与计算机的自动快速区分,规避或极大降低计算机通过图像识别技术与人工
    智能技术进行验证码破解的可能性;利用随机变换量生成不同的模型初始状态和目标状态
    图片,实现验证码的自动生成与更新,规避或极大降低计算机通过穷举遍历方法进行破解
    的可能性,进而有效降低人工筛选的处理成本;并且还可以通过滑动操作而不是键盘操作
    完成验证码输入,降低用户误操作的可能性,提升交互效率和用户体验。

    附图说明

    图1为本发明第一实施例的三维模型验证码实现方法的流程示意图。

    图2a、2b为本发明第一实施例的三维模型验证码实现方法在客户端显示区域中的
    显示示意图,其中图2a为初始页面示意图、图2b为通过滑动操作旋转操作模型至正确位置
    的示意图。

    图3为本发明第一实施例的三维模型验证码实现装置的结构示意图。

    图4为本发明第二实施例的三维模型验证码实现方法的流程示意图。

    图5a、5b为本发明第二实施的三维模型验证码实现方法在客户端显示区域中显示
    示意图,其中图5a为初始页面示意图,图5b为通过移动滑动条旋转操作模型至正确位置的
    示意图。

    图6为本发明第二实施例的三维模型验证码实现装置的结构示意图。

    图7为本发明第三实施例的三维模型验证码实现方法的流程示意图。

    具体实施方式

    以下结合附图实施例对本发明作进一步详细描述。

    如图1、2a、2b、3所示,为本发明第一实施例的三维模型验证码的实现方法的流程
    图以及显示示意图和装置的结构示意图。

    该实施例中的三维模型验证码的实现方法,需要预先形成一个模型库,用于存储
    多个不同样式的三维模型,该三维模型验证码的实现方法包括以下步骤:

    步骤101,对模型库中的所有三维模型进行预处理,将三维模型中心平移至世界坐
    标原点,以便用户操作旋转时围绕模型中心旋转,将平移后的三维模型保存至模型库。

    步骤102,服务端在收到客户端验证码请求后,从模型库中随机选取一个三维模型
    作为原始模型,并生成两组不同的随机初始变换量和目标变换量,本实施例为旋转变换量
    Q1和Q2,其中Q1为初始旋转变换量,Q2为目标旋转变换量。旋转变换量可通过3阶正交矩阵、
    单位四元数或欧拉角等方式表示,本实施例采用单位四元数的表示方式,即Q1和Q2分别为初
    始旋转四元数和目标旋转四元数。为避免随机的初始变换量和目标变换量相似,生成的Q1
    和Q2应满足以下条件,否则重新生成:

    FAbs(Dot(Q1,Q2)-1.0)>ε1;

    其中ε1为预定义的初始旋转变换量Q1与目标旋转变换量Q2之间的初始差异阈值,
    取值范围为(0,1)。初始差异阈值ε1可根据实际需要设定,数值越大则初始状态与目标状态
    差异越显著,用户操作难度也越高,本实施例中设置为0.1。FAbs为绝对值函数,Dot为四元
    数的点积函数。本领域技术人员可以了解到,该初始变换量和目标变换量中所述的变换量
    是改变三维模型的某种属性的变量,可以改变三维模型的朝向、大小、位置、材质、颜色等等
    各种属性;相应地,该变换量可以为旋转变换量、缩放变换量、平移变换量、材质变换量或颜
    色变换量等等,或者也可以是其他变换量。

    步骤103,服务端将目标旋转变换量Q2应用于原始模型生成目标模型,并将其渲染
    成目标图片,渲染时应合理设置视锥体(Frustum)与视口(Viewport),保证整个目标模型在
    图片区域内并位于图片中心,目标图片大小设定为150px*100px,其中px表示像素。

    步骤104,服务端将初始旋转变换量Q1,原始模型与目标图片发送至客户端,客户
    端接受数据后在两个区域内进行展示,其中一个区域采用三维渲染技术展示应用了初始旋
    转变换量Q1后的原始模型,即操作模型,另一个区域展示目标图片,参见图2a。

    步骤105,用户通过鼠标或手指的滑动旋转操作模型,即在一个区域中操作该操作
    模型,使得该区域中的操作模型的状态与目标图片中展示的目标模型的状态相同,该操作
    过程中将初始旋转变换量Q1变换为最终旋转变换量Q3。

    旋转采用常用的轨迹球(Track Ball)方法实现,即先将屏幕上滑动产生的二维坐
    标映射到球体表面生成三维坐标,设某一段滑动起始点的三维坐标为P1,终止点的三维坐
    标P2,坐标原点为P0,向量V1=P1-P0,向量V2=P2-P0,则滑动产生的旋转变换量Qt为:

    Qt=([sin(θ/2)*(Norm(Cross(V1,V2)),cos(θ/2)]);

    其中θ表示V1于V2之间的夹角,Cross为向量的叉积函数,Norm为向量的单位化函
    数。在渲染时应用Qt即可实现实时旋转。

    用户是连续的滑动操作会产生多个Qt,而四元数乘法的含义为旋转的合并,即Qt2*
    Qt1的结果表示先应用旋转Qt1,再应用旋转Qt2,因此最终客户端的最终旋转变换量为Q3=
    Qtn*Qtn-1…Qt2*Qt1*Q1,其中*为四元数乘法符号,tn表示第n次完成的旋转操作。Qtn为每一次
    旋转操作所产生的中间旋转变换量,n为操作的次数,为自然数。

    用户通过旋转操作使得操作模型朝向与目标图片基本一致,参见图2b。操作完成
    后,客户端将最终旋转变换量Q3发送至服务端。

    步骤106,服务端收到客户端的反馈数据后,判断最终旋转变换量Q3与目标旋转变
    换量Q2之间的误差是否在预定义的目标差异阈值内,即计算以下公式是否成立:

    FAbs(Dot(Q2,Q3)-1.0)<ε2;

    其中ε2为预定义的最终旋转变换量与目标旋转变换量的目标差异阈值,取值范围
    为(0,1)。目标差异阈值ε2可根据实际需要设定,数值越小则最终朝向与目标朝向差异越
    小,验证通过难度也越高,本实施例中设置为0.1。FAbs为绝对值函数,Dot为四元数的点积
    函数。如果公式成立则返回验证通过,否则返回验证不通过。

    图3为本发明第一实施例提供的三维模型验证码实现装置的结构示意图,该实施
    例的验证码实现装置包括:

    模型初始化???01,对模型库中的所有三维模型进行预处理,将三维模型中心平
    移至世界坐标原点,以便用户操作旋转时围绕模型中心旋转,将平移后的模型保存至模型
    库。

    变换量生成???02,用于生成改变三维模型状态的随机变换量,包括初始变换量
    和目标变换量,该实施例中为改变三维模型朝向的随机旋转变换量,包括初始旋转变换量
    Q1和目标旋转变换量Q2,旋转变换量通过单位四元数表示。

    渲染???03,用于将目标变换量应用于原始模型生成目标模型,并且目标模型渲
    染形成目标图片,该实施例中即将目标旋转变换量Q2应用于原始模型形成目标模型,并渲
    染成目标图片。

    渲染交互???04,用于将接收到的应用了初始变换量的原始模型即操作模型和
    目标图片显示在客户端,然后利用各种方法实现人机交互功能并且计算用户操作所产生的
    最终变换量,将其发回服务端,例如该实施例中采用轨迹球方法实现旋转交互功能。累积记
    录用户鼠标或手指滑动所产生变换量,生成最终旋转变换量Q3,将其发送至服务端。

    变换量比对???05,用于比较客户端发送的最终变换量与随机生成的目标变换
    量的差异,如果相近,则返回验证通过,否则返回验证不通过。该实施例中,是比较最终旋转
    变换量Q3与目标旋转变换量Q2的差异。

    上述模型初始化???01、变换量生成???02、渲染???03和变换量比对???br />305位于服务端,渲染交互???04位于客户端,当然,本领域技术人员也可以了解到,变换
    量生成???02、渲染???03和变换量比对???05优选地位于服务端,仅仅只有渲染交互
    ??樵诳突Ф?,可以防止客户端能够拦截到目标变换量的信息以用于破解。

    上述渲染???03、变换量比对???05也可以位于客户端,可以在服务端生成变
    换量然后传送给客户端,再客户端生成目标图片和操作模型,并且将最终变换量与目标变
    换量比较的结果返回给服务端即可?;蛘弑浠涣可赡?橐部梢晕挥诳突Ф?,或者也可以
    根据需要省略服务端,即该装置的??樗Φ奈恢每梢匀我馍柚?。只是上述各种实施方式
    中,要防止客户端通过获取目标变换量破解验证码,就需要附加加密程序。

    图4为本发明第二实例的三维模型验证码实现方法的流程图,该实施例也需要预
    先形成一个模型库,用于存储多个不同样式的三维模型。该实施例的实现方法包括如下步
    骤:

    步骤401,对模型库中的所有三维模型进行预处理,将三维模型中心平移至世界坐
    标原点,以便用户操作旋转时围绕模型中心旋转,将平移后的三维模型保存至模型库。

    步骤402,服务端在收到客户端验证码请求后,从模型库中随机选取一个三维模型
    作为原始模型,并生成两个不同的随机初始旋转变换量Q1和Q1’,其中Q1为初始旋转变换量,
    Q1’为初始目标旋转变换量。该初始旋转变换量Q1和初始目标旋转变换量Q1’通过单位四元
    数表示。为避免两个随机变换量相似,生成的Q1和Q1’应满足以下条件,否则重新生成:

    FAbs(Dot(Q1,Q1’)-1.0)>ε3;

    其中ε3为预定义的初始旋转变换量与初始目标旋转变换量的中间差异阈值,取值
    范围为(0,1)。ε3可根据实际需要设定,数值越大则初始状态与初始目标状态差异越显著,
    用户操作难度也越高,本实施例中设置为0.1。FAbs为绝对值函数,Dot为四元数的点积函
    数。

    步骤403,生成一个随机数t,取值范围为(0,1),计算目标旋转变换量Q2=Slerp
    (Q1,Q1’,t),其中Slerp为两四元数球面插值函数,返回值为单位四元数。

    步骤404,渲染??榻勘晷浠涣縌2应用于原始模型生成目标模型,并将该目
    标模型渲染成目标图片,渲染时应合理设置视锥体与视口,保证整个模型在图片区域内并
    位于图片中心,目标图片大小设定为150px*100px,其中px表示像素。

    步骤405,服务端将原始模型、初始旋转变换量Q1、初始目标旋转变换量Q1’、以及目
    标图片发送至客户端,客户端接受数据后在两区域内进行展示,其中一个区域采用三维渲
    染技术展示应用了初始旋转变换量Q1的模型,即操作模型,另一区域展示目标图片,参见图
    5a。

    步骤406,客户端用户通过鼠标或手指移动滑动条,设滑动条长度为200px,其中px
    表示像素,对应的数值范围为[0.0,1.0],即每移动一个像素,数值增减0.005,则移动滑动
    条产生的最终旋转变换量为:

    Q3=Slerp(Q1,Q1’,s),其中s为用户移动滑动条产生的对应数值,Slerp为两四元
    数球面插值函数??突Ф私钪招浠涣縌3应用于操作模型渲染,实现操作模型旋转,即
    随着滑动条的移动,操作模型在三维空间中进行旋转。

    用户通过移动滑动条操作使得三维模型朝向与目标图片所示基本一致,参见图
    5b。操作完成后客户端将最终旋转变换量Q3发送至服务端。

    步骤407服务端收到客户端的反馈数据后,计算以下公式是否成立:

    FAbs(Dot(Q2,Q3)-1.0)<ε2;

    其中ε2为预定义的最终旋转变换量与目标旋转变换量的目标差异阈值,取值范围
    为(0,1)。ε2可根据实际需要设定,数值越小则最终朝向与目标朝向差异越小,验证通过难
    度也越高,本实施例中设置为0.1。FAbs为绝对值函数,Dot为四元数的点积函数。如果公式
    成立则返回验证通过,否则返回验证不通过。

    该实施例与第一实施例不同的是,采用滑动条方式进行旋转的操作,因此需要中
    间产生随机值t来进行控制。因此,说明该变换量的表示方式可以有多种,可用不同的算法
    来表示和判断。

    图6为本发明第二实施例提供的三维模型验证码实现装置的结构示意图。该实施
    例的验证码实现装置包括:

    模型初始化???01,对所有模型库中的三维模型进行预处理,将三维模型平移至
    世界坐标原点,以便用户操作旋转时围绕模型中心旋转,将平移后的模型保存至模型库。

    变换量生成???02,用于生成改变朝向的随机旋转变换量,旋转变换量通过单位
    四元数表示。该实施例中用于产生初始旋转变换量Q1,初始目标旋转变换量Q1’。

    该变换量生成???02中还包括随机数生成???021和变换量插值???022,该
    随机数生成???021用于生成(0,1)范围内的随机数t;变换量插值???022,用于计算两
    个旋转变换量的球面插值,生成目标旋转变换量Q2。

    渲染???03,用于将目标变换量应用于三维模型生成目标模型,并将目标模型渲
    染成目标图片。该实施例中,将目标旋转变换量Q2应用于三维模型形成目标模型,并将目标
    模型渲染成目标图片。

    渲染交互???04,用于将接收到的初始变换量应用于原始模型形成操作模型,并
    将操作模型和目标图片显示在客户端,并利用移动滑动条产生的数值和接收到的两旋转变
    换量插值生成新的旋转变换量,实现模型的旋转。将操作完成时的最终旋转变换量发送至
    服务端,即最终旋转变换量Q3发送至服务端。

    变换量比对???05,用于比较客户端发送的最终变换量与随机生成的目标变换
    量的差异,如果相近,则返回验证通过,否则返回验证不通过。该实施例中,即判断最终旋转
    变换量Q3与目标旋转变换量Q2的差异。

    上述模型初始化???01、变换量生成???02、渲染???03和变换量对比???br />605可以位于服务端,渲染交互???04可以位于客户端,这样可以防止客户端获取到目标
    变换量的信息,以防止批量破解验证码。

    该渲染???03和变换量对比???05也可以位于客户端,如果渲染???03位于
    客户端,该实施例中的步骤中,服务端只要将生成的随机变换量Q1和Q1’以及原始模型发送
    至客户端供客户端使用即可,在客户端生成目标图片以及操作模型并且进行最终变换量与
    目标变换量的比较,最终返回结果给服务端即可。本领域技术人员可以根据需要做出相应
    的调整,并且,变换量生成???02也可以位于客户端。只是上述各种实施方式中,要防止客
    户端通过获取目标变换量破解验证码,就需要附加加密程序。

    图7为本发明第三实施例的三维模型验证码的实现方法的流程示意图,同样与第
    一、第二实施例一样,该方法也需要先生成模型库,用于存储不同样式的三维模型,具体还
    包括以下步骤:

    步骤701,对模型库中的所有模型进行预处理,将三维模型中心平移至世界坐标原
    点,以便用户操作旋转时围绕模型中心旋转,将平移后的模型保存至模型库。

    步骤702,服务端在收到客户端验证码请求后,从模型库中随机选取一个三维模型
    作为原始模型,并生成两组不同的随机变换量,分别是一组初始变换量和一组目标变换量,
    该一组初始变换量包括为初始旋转变换量Q1和初始缩放变换量S1。另一组目标变换量包括
    初始目标旋转变换量Q1’和初始目标缩放变换量S1’,初始旋转变换量Q1和初始目标旋转变
    换量Q1’通过单位四元数表示,初始缩放变换量S1和初始目标缩放变换量S1’以实数方式表
    示。

    为避免两组随机变化量相似,生成的初始旋转变换量Q1和初始目标旋转变换量
    Q1’、初始缩放变换量S1和初始目标缩放变换量S1’应满足以下条件,否则重新生成相应的变
    化量:

    FAbs(Dot(Q1,Q1’)-1.0)>ε3,且S1/S1’>λ1或S1’/S1>λ1;

    其中ε3为预定义的初始旋转变换量与初始目标旋转变换量的中间旋转差异阈值,
    取值范围为(0,1)。ε3可根据实际需要设定,数值越大则初始状态与初始目标状态差异越显
    著,用户操作难度也越高,本实施例中设置为0.1。FAbs为绝对值函数,Dot为四元数的点积
    函数。λ1为预定义的初始缩放变换量与初始目标缩放变换量的中间缩放差异阈值,λ1可根据
    实际需要设定,数值越大则初始状态与初始目标状态差异越显著,用户操作难度也越高,本
    实施例中设置为1.1,同时为避免缩放过大或过小影响用户识别,S1与S1’的取值范围可设为
    (0.5,2.0)。

    步骤703,生成随机数t,取值范围为(0.0,1.0),计算目标旋转变换量Q2=Slerp
    (Q1,Q1’,t),其中Slerp为两四元数球面插值函数,返回值为单位四元数。

    生成随机数r,取值范围为(0.0,1.0),计算目标缩放变换量S2=Lerp(S1,S1’,r),
    其中Lerp为两个数的线性插值函数,返回值为插值后的数值。

    步骤704,渲染??榻勘晷浠涣縌2和目标缩放变换量S2,应用于原始模型形
    成目标模型,并将其渲染成目标图片,渲染时应合理设置视锥体与视口,保证整个模型在图
    片区域内并位于图片中心,同时保证目标图片大小与客户端的模型展示区域大小一致,以
    便用户参照目标图片缩放模型。

    步骤705,服务端将原始模型,初始旋转变换量Q1和初始目标旋转变换量Q1’,初始
    缩放变换量S1和初始目标缩放变换量S1’,目标图片发送至客户端,客户端接受数据后在两
    区域内进行展示,其中一个区域采用三维渲染技术展示应用了初始旋转变换量Q1和初始缩
    放变换量S1的操作模型,另一区域展示目标图片,两个区域展示大小保持一致。

    步骤706,在客户端添加两条滑动条,分别用于控制初始旋转变换量和初始缩放变
    换量。用户通过鼠标或手指移动滑动条,设滑动条长度为200px,其中px表示像素,对应的数
    值范围为[0.0,1.0],即每移动一个像素,数值增减0.005,则移动滑动条产生的最终旋转变
    换量Q3和最终缩放变换量S3分别为:

    Q3=Slerp(Q1,Q1’,s),其中s为用户移动一条滑动条产生的相对于旋转的对应数
    值,Slerp为两四元数球面插值函数??突Ф私玅3应用于操作模型渲染,实现操作模型旋转,
    即随着一条滑动条的移动,模型在三维空间中进行旋转。

    S3=Lerp(S1,S1’,p),其中p为用户移动另一条滑动条产生的相对于缩放的对应数
    值,Lerp为两个实数的线性插值函数??突Ф私玈3应用操作于模型渲染,实现操作模型缩
    放,即随着另一条滑动条的移动,模型在三维空间中进行缩放。

    用户通过移动滑动条操作使得操作模型朝向、大小与目标图片所示基本一致。操
    作完成后客户端将最终旋转变换量Q3和最终缩放变换量S3发送至服务端。

    步骤707服务端收到客户端的反馈数据后,计算以下公式是否成立:

    FAbs(Dot(Q2,Q3)-1.0)<ε2,且S2/S3>λ2或S3/S2>λ2。

    其中ε2为预定义的最终旋转变换量与目标旋转变换量的目标旋转差异阈值,取值
    范围为(0,1)。ε2可根据实际需要设定,数值越小则最终朝向与目标朝向差异越小,验证通
    过难度也越高,本实施例中设置为0.1。λ2为预定义的最终缩放变换量与目标缩放变换量的
    目标缩放差异阈值。λ2可根据实际需要设定,数值越小则最终大小与目标大小差异越小,验
    证通过难度也越高,本实施例中设置为1.05。FAbs为绝对值函数,Dot为四元数的点积函数。
    如果公式成立则返回验证通过,否则返回验证不通过。

    该实施例中,一组初始变换量和一组初始目标变换量均包括旋转变换量和缩放变
    换量,即每一组变换量包括两种变换量并且个数和种类相互对应,并且随机数也为一组,随
    机数的个数也与每组变换量的个数相对应,因此,生成的目标变换量也为一组,个数和种类
    也都与初始变换量、初始目标变换量相互对应。

    该三维模型验证码的实现方法及其装置,利用人类相比计算机在三维空间感知方
    面的优势,实现人与计算机的自动快速区分,规避或极大降低计算机通过图像识别技术与
    人工智能技术进行验证码破解的可能性;利用随机变换量生成不同的模型初始状态和目标
    状态图片,实现验证码的自动生成与更新,规避或极大降低计算机通过穷举遍历方法进行
    破解的可能性,进而有效降低人工筛选的处理成本;并且还可以通过滑动操作而不是键盘
    操作完成验证码输入,降低用户误操作的可能性,提升交互效率和用户体验。

    以上所述实施例仅表达了本发明的较佳实施例,其描述较为具体和详细,但并不
    能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的技术人员来说,凡
    在本发明的精神和原则之内,所做的任何修改,等同替换,改进等,均应包含在本发明的保
    护范围之内。

    关于本文
    本文标题:三维模型验证码的实现方法及其装置.pdf
    链接地址://www.4mum.com.cn/p-6027220.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    [email protected] 2017-2018 www.4mum.com.cn网站版权所有
    经营许可证编号:粤ICP备17046363号-1 
     


    收起
    展开
  • 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03
  • 手游棋牌黑客技术教程 pk10计划人工在线计划8码 福利彩票模拟投注器 秒速时时开奖平台 pk10是怎样的骗局 11选五计划软件手机版下载 黑彩时时彩计划软件 北京pk赛车怎么玩能赢 分分彩后4稳赚方案 奇妙趋势判断三期内中 时时彩最稳打法 上海时时哪儿买的 比大小 广西福彩投注客户端 北京pk10必中8码方法 御彩轩计划软件免费版