一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于机械震动的视力障碍者提示方法及装置与流程

2022-04-30 15:53:05 来源:中国专利 TAG:


1.本发明属于人工智能技术领域,具体涉及一种基于机械震动的视力障碍者提示方法及装置。


背景技术:

2.基于卷积神经网络cnn的深度学习算法,可用于有效提取图像特征,在图像的识别、分割和检测方面均有广泛的应用。人脸检测算法(即检测人脸在图像中的位置)有较为成熟的深度学习模型,如可以运行在移动gpu上的轻量人脸检测模型blazeface。在人脸检测方面,检测模型blazeface相比另一个轻量级检测模型mobilenetv2-ssd有较大的性能提升。另一方面,基于深度学习的人脸识别算法也有广泛的应用。人脸识别算法是将人脸的图像映射到一个特征向量,使同一个人的不同人脸图像的特征向量的距离较近,而不同人的人脸图像的特征向量距离较远。现有的深度学习技术方案中,有基于分类的算法,即将训练集中的每一个人作为一个类别,取最后一个全连接层的前一层作为人脸图像的特征向量(如deepface);也有基于特征嵌入(feature embedding)的算法,构造损失函数直接优化特征向量(如deepid2、deepid3、facenet等)。
3.人脸识别多用于安检、门禁等场景,近年来在辅助盲人感知领域得到了越来越多的应用。比如,通过人脸识别辅助盲人分辨面前的人是陌生人还是熟人,如果是熟人,还可进一步分辨出具体哪位熟人。现有技术一般是基于人脸库进行识别,但人脸库中的图像不能自动更新,当希望记录更多的人脸时,没有便捷的方案,只能手动添加人脸图像并重新更新模型,操作相当麻烦,使用者本人根本无法独立完成。另外,现有技术一般通过语音模块向使用者播放识别结果,由于语音模块是一个智能模块,将识别结果转换成语音的过程耗时长,一般需要数秒时间,实时性差;而且语音播放会对本人和他人产生干扰。


技术实现要素:

4.为了解决现有技术中存在的上述问题,本发明提供一种基于机械震动的视力障碍者提示方法及装置。
5.为了实现上述目的,本发明采用以下技术方案。
6.第一方面,本发明提供一种基于机械震动的视力障碍者提示方法,包括以下步骤:
7.基于深度相机实时拍摄的视频图像,利用人脸库进行人脸检测与识别,得到目标人脸在图像中的位置及识别出的人员的二进制编码;
8.基于所述位置和图像深度信息计算目标人脸中心偏离图像中心线的角度;
9.生成幅度与所述角度相关且受所述二进制编码调制的电压驱动信号,将所述信号送至震动器,以机械震动方式播放人脸识别结果。
10.进一步地,所述目标人脸中心偏离图像中心线的角度的计算方法包括:
11.建立以深度图像左上角为原点、以过左上角的两条直角边分别为x轴和y轴,建立直角平面坐标系;
12.计算目标人脸中心的横坐标x0=x1 w/2,x1、w分别为人脸检测得到的目标人脸图像外接矩形左上角的横坐标和外接矩形宽度;
13.计算深度图像中线即视野中心线的横坐标a/2,a为深度图像的宽度;
14.计算目标人脸中心到视野中心线的代数距离,公式如下:
15.d=λ*(x
0-a/2)
16.式中,λ为一个像素点直径对应的实际长度,d为所述代数距离,d为正表示目标人脸位于视野中心线的右侧,d为负表示目标人脸位于视野中心线的左侧;
17.计算目标人脸中心偏离视野中心线的角度α,公式如下:
18.α=arcsin(d/r)
19.式中,r为基于图像深度信息得到的目标人脸与视力障碍者的距离。
20.进一步地,所述震动器包括左侧震动器和右侧震动器,当目标人脸中心对准图像中心线时,左侧震动器和右侧震动器的震动强度相等;当目标人脸中心位于图像中心线左侧时,左侧震动器的震动强度大于对准时的震动强度,右侧震动器的震动强度小于对准时的震动强度,且越靠左左侧震动器的震动强度越大、右侧震动器的震动强度越小;当目标人脸中心位于图像中心线右侧时,左侧震动器的震动强度小于对准时的震动强度,右侧震动器的震动强度大于对准时的震动强度,且越靠右左侧震动器的震动强度越小、右侧震动器的震动强度越大。
21.更进一步地,左侧震动器和右侧震动器的电压驱动信号幅度的计算公式如下:
22.a
l
=a0(1-α/(π/2))
23.ar=a0(1 α/(π/2))
24.式中,α为目标人脸中心偏离视野中心线的角度,α∈[-π/2,π/2],a
l
、ar分别为左侧震动器和右侧震动器的电压驱动信号的幅度,α=0时,a
l
==ar=a0。
[0025]
进一步地,所述人员的二进制编码包括陌生人二进制编码和熟人二进制编码;所有的陌生人二进制编码都相同,均为最高位为1其余位为0的二进制码;每个熟人对应一个不同的熟人二进制编码,熟人二进制编码为最高位为1其余位为不全为0的二进制码。
[0026]
进一步地,所述二进制编码的调制方法包括:
[0027]
所述二进制编码的每位1和0分别对应一段等时长的正弦信号,1对应的正弦信号频率高于0对应的正弦信号频率。
[0028]
更进一步地,0对应零信号即不震动,1对应某一频率的正弦信号。
[0029]
进一步地,所述人脸库包括熟人人脸库和陌生人人脸库,分别用于保存熟人人脸特征向量和陌生人人脸特征向量;所述方法还包括人脸库周期更新步骤:
[0030]
分别计算当前更新周期内获取的每个人脸特征向量与熟人人脸库中的每个特征向量的相似度;
[0031]
若某个人脸特征向量与熟人人脸库中的每个特征向量的相似度均小于设定的第一阈值,则将所述人脸特征向量加入集合m;
[0032]
对集合m中的特征向量进行聚类,得到若干个聚类后的簇;计算特征向量个数大于第二阈值的簇中的所有特征向量的平均值,得到均值特征向量,并从集合m中删除所述簇中的所有特征向量;
[0033]
计算所述均值特征向量与熟人人脸库中的每个特征向量的相似度,若所有相似度
的值均小于设定的第一阈值,则为所述均值特征向量设定一个新的熟人二进制编码后,将其加入熟人人脸库;否则,认为所述均值特征向量已存在于熟人人脸库;
[0034]
给集合m中剩余的特征向量设定陌生人二进制编码后,将所述特征向量加入陌生人人脸库。
[0035]
第二方面,本发明提供一种基于机械震动的视力障碍者提示装置,包括:
[0036]
人脸识别模块,用于基于深度相机实时拍摄的视频图像,利用人脸库进行人脸检测与识别,得到目标人脸在图像中的位置及识别出的人员的二进制编码;
[0037]
角度计算模块,用于基于所述位置和图像深度信息计算目标人脸中心偏离图像中心线的角度;
[0038]
震动提示模块,用于生成幅度与所述角度相关且受所述二进制编码调制的电压驱动信号,将所述信号送至震动器,以机械震动方式播放人脸识别结果。
[0039]
进一步地,所述目标人脸中心偏离图像中心线的角度的计算方法包括:
[0040]
建立以深度图像左上角为原点、以过左上角的两条直角边分别为x轴和y轴,建立直角平面坐标系;
[0041]
计算目标人脸中心的横坐标x0=x1 w/2,x1、w分别为人脸检测得到的目标人脸图像外接矩形左上角的横坐标和外接矩形宽度;
[0042]
计算深度图像中线即视野中心线的横坐标a/2,a为深度图像的宽度;
[0043]
计算目标人脸中心到视野中心线的代数距离,公式如下:
[0044]
d=λ*(x
0-a/2)
[0045]
式中,λ为一个像素点直径对应的实际长度,d为所述代数距离,d为正表示目标人脸位于视野中心线的右侧,d为负表示目标人脸位于视野中心线的左侧;
[0046]
计算目标人脸中心偏离视野中心线的角度α,公式如下:
[0047]
α=arcsin(d/r)
[0048]
式中,r为基于图像深度信息得到的目标人脸与视力障碍者的距离。
[0049]
与现有技术相比,本发明具有以下有益效果。
[0050]
本发明以震动器作为对视力障碍者的提示装置,相对以语音模块作为提示装置的现有技术,不需要进行语音识别(将识别结果的文本描述转换为语音),明显提高了提示响应速度;本发明通过对人员库中的人员进行二进制编码,通过人脸识别得到目标人员的二进制编码,并以所述二进制编码对震动器驱动信号进行调制,实现了以机械震动形式帮助视力障碍者辨认不同的人员。
附图说明
[0051]
图1为本发明实施例一种基于机械震动的视力障碍者提示方法的流程图。
[0052]
图2为计算目标人脸偏离视野中心线角度a的示意图。
[0053]
图3为本发明实施例一种基于机械震动的视力障碍者提示装置的方框图。
具体实施方式
[0054]
为使本发明的目的、技术方案及优点更加清楚、明白,以下结合附图及具体实施方式对本发明作进一步说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部
的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0055]
图1为本发明实施例一种基于机械震动的视力障碍者提示方法的流程图,包括以下步骤:
[0056]
步骤101,基于深度相机实时拍摄的视频图像,利用人脸库进行人脸检测与识别,得到目标人脸在图像中的位置及识别出的人员的二进制编码;
[0057]
步骤102,基于所述位置和图像深度信息计算目标人脸中心偏离图像中心线的角度;
[0058]
步骤103,生成幅度与所述角度相关且受所述二进制编码调制的电压驱动信号,将所述信号送至震动器,以机械震动方式播放人脸识别结果。
[0059]
本实施例提出一种基于人脸识别结果以机械震动形式对盲人(视力障碍者)进行提示的方法。本实施例涉及的硬件结构至少包括一个深度相机(如双目相机)、一个数据处理模块和一个震动器。深度相机一般安装在盲人眼镜上,用于实时获取盲人(佩戴者)前方的视频图像,并生成深度图像,即得到rgb-d四通道图像,作为数据处理模块的输入。数据处理模块可以是一个单独的处理器包括存储器,也可以是一个云服务器。数据处理模块基于所述图像采用目标检测识别算法进行人脸检测与识别,并根据人脸检测与识别结果,产生与识别结果相关的电压驱动信号。震动器在所述电压驱动信号作用下产生机械震动,将识别结果以机械震动形式播放给盲人(进行提示),比如告知来人是谁,相对本人的位置等。
[0060]
本实施例中,步骤101主要用于进行人脸检测与识别。人脸检测与识别以rgb-d四通道图像为输入,其中深度图像可由深度相机拍摄的图像和深度相机的内外参数获得。深度图像中,每一个像素点的值表示相机到检测目标对应点的距离(深度)。人脸检测是找出图像中人脸对应的位置,算法的输出是人脸外接矩形在图像中的位置坐标及尺寸,比如外接矩形左上角的坐标和矩形的长、宽。本实施例中,将深度图像作为一个输入通道,即输入图像为rgb-d 4通道的图像。考虑到需将硬件装置搭载在移动设备上,可采用轻量级的人脸检测网络blazeface进行人脸检测。blazeface设计了blazeblock结构,该结构增加了部分卷积核尺寸,使用5*5大小的卷积核,使感受野达到指定大小所需的bottleneck(瓶颈层)数量大大减小。该模型在iphone xs的处理器识别128*128尺寸的图像仅需0.6s。其它人脸检测算法也可以实现同样的功能。人脸识别通过深度卷积神经网络将人脸图像映射为特征向量,使得同一个人的不同人脸图像对应的特征向量之间的距离尽可能近即相似度尽可能高,不同人的人脸图像对应的特征向量的距离尽可能远。基于这些特征向量之间的相似度,可以解决人脸图像的识别、验证和聚类等问题。本实施例通过基础网络(可以是vgg、resnet、densenet等)提取人脸特征,使用全局池化后的特征作为提取的特征向量,使用triplet loss作为损失函数进行模型训练。本实施例人脸识别的结果是得到目标人脸对应的人员的二进制编码。对于熟人,一个二进制编码对应一个不同的熟人,盲人可根据二进制编码联想到是哪位熟人。
[0061]
本实施例中,步骤102主要用于计算识别出的人员的相对(佩戴者的)位置。计算所述相对位置的目的是用于确定震动器驱动信号的幅度即震动器的震动强度。所述相对位置可以包括识别出的人员相对佩戴者的距离,也可以包括识别出的人员相对相机视野中心线的偏角,比如偏左/右多少度。所述位置可通过根据人脸检测得到的人脸图像的位置尺寸数
据以及图像深度信息,进行计算得到。
[0062]
本实施例中,步骤103主要用于以机械震动方式播放人脸识别结果。本实施例采用震动器以机械震动方式对盲人进行提示。比如,可以用震动强度的大小、震动频率的高低、震动时长等特征表示一些简单的信息。震动器为电驱动震动装置,其产生的机械震动形式主要由其电压驱动信号的波形决定。因此,利用震动器进行提示的关键是产生满足要求的电压驱动信号波形。本实施例采用震动强度表示识别出的人员与佩戴者的相对位置,而决定震动强度的是电压驱动信号的幅度,因此可以将电压驱动信号的幅度设计成随相对位置(如人员偏离视野中心线的角度)变化的函数。如果想用震动强度表示更多的信息,比如不仅表示偏离角度的大小,还要表示偏离方向是左还是右,可以设置两个震动器。本实施例采用二进制编码表示识别出的不同的人员(比如001表示张三,011表示李四),可通过将所述二进制编码作为电压驱动信号的调制信号以产生不同形式的震动信号实现。调制方法可以采用幅度调制,比如用0和1分别对应不同的电压幅度,或用不同的二进制编码对应不同的电压幅度;也可以采用频率调制,比如用0和1分别对应不同的信号频率,或用不同的二进制编码对应不同的信号频率。本实施例对具体的调制方法不作限定,后面的实施例将给出一种具体的技术方案。
[0063]
作为一可选实施例,所述目标人脸中心偏离图像中心线的角度的计算方法包括:
[0064]
建立以深度图像左上角为原点、以过左上角的两条直角边分别为x轴和y轴,建立直角平面坐标系;
[0065]
计算目标人脸中心的横坐标x0=x1 w/2,x1、w分别为人脸检测得到的目标人脸图像外接矩形左上角的横坐标和外接矩形宽度;
[0066]
计算深度图像中线即视野中心线的横坐标a/2,a为深度图像的宽度;
[0067]
计算目标人脸中心到视野中心线的代数距离,公式如下:
[0068]
d=λ*(x
0-a/2)
[0069]
式中,λ为一个像素点直径对应的实际长度,d为所述代数距离,d为正表示目标人脸位于视野中心线的右侧,d为负表示目标人脸位于视野中心线的左侧;
[0070]
计算目标人脸中心偏离视野中心线的角度α,公式如下:
[0071]
α=arcsin(d/r)
[0072]
式中,r为基于图像深度信息得到的目标人脸与视力障碍者的距离。
[0073]
本实施例给出了计算目标人脸中心偏离图像中心线角度的一种技术方案。首先通过建立图像直角坐标系,然后利用解析几何知识求解脸中心偏离图像中心线的代数距离。不同于一般的距离概念,所述代数距离是指其值有正负之分,目的是使最后得到的偏角α也有正负之分,以便区分偏离的方向是左还是右。如图2所示。本实施例的偏角α的取值范围,通过反正弦函数限定在正、负90度或正、负π/2弧度之间。
[0074]
作为一可选实施例,所述震动器包括左侧震动器和右侧震动器,当目标人脸中心对准图像中心线时,左侧震动器和右侧震动器的震动强度相等;当目标人脸中心位于图像中心线左侧时,左侧震动器的震动强度大于对准时的震动强度,右侧震动器的震动强度小于对准时的震动强度,且越靠左左侧震动器的震动强度越大、右侧震动器的震动强度越小;当目标人脸中心位于图像中心线右侧时,左侧震动器的震动强度小于对准时的震动强度,右侧震动器的震动强度大于对准时的震动强度,且越靠右左侧震动器的震动强度越小、右
侧震动器的震动强度越大。
[0075]
本实施例设置两个震动器即左侧震动器和右侧震动器。设置两个震动器的目的是便于进行方向提示,其技术原理是:当目标人脸中心对准图像中心线时,左侧震动器和右侧震动器的震动强度相等。目标人脸偏离图像中心线时,越靠左,左侧震动器的震动强度越大,右侧震动器的震动强度越小;反之亦然。值得说明的是,采用两个震动器进行方向提示并不是必需的,只采用一个震动器照样可以区分方向,只是不如采用两个震动器效果好而已。
[0076]
作为一可选实施例,左侧震动器和右侧震动器的电压驱动信号幅度的计算公式如下:
[0077]al
=a0(1-α/(π/2))
[0078]ar
=a0(1 α/(π/2))
[0079]
式中,α为目标人脸中心偏离视野中心线的角度,α∈[-π/2,π/2],a
l
、ar分别为左侧震动器和右侧震动器的电压驱动信号的幅度,α=0时,a
l
=ar=a0。
[0080]
本实施例给出了两个震动器电压驱动信号幅度的计算方法。为了简化计算,本实施例将两个震动器的电压驱动信号的幅度均设计为α的一次线性函数,画出函数曲线,一个为斜率为负的直线,另一个为斜率为正的直线。具体表达式见上面的两个公式。如此设计符合上一实施例对所述两个震动器特性的描述。值得说明的是,这里的a0只是一个参考量,其取值可根据实际的应用场景具体确定。
[0081]
作为一可选实施例,所述人员的二进制编码包括陌生人二进制编码和熟人二进制编码;所有的陌生人二进制编码都相同,均为最高位为1其余位为0的二进制码;每个熟人对应一个不同的熟人二进制编码,熟人二进制编码为最高位为1其余位为不全为0的二进制码。
[0082]
本实施例给出了对人员进行二进制编码的一种技术方案。本实施例中,将待编码的人员分为两类:一类是陌生人,一类是熟人。由于陌生人无法区分,本实施例将所有的陌生人二进制编码设计为一个相同的二进制码,并给出了一种具体的实例,即最高位为1其余位为0的二进制码。对于熟人,则要一一进行区分,即给每个熟人分配一个不同的二进制码。本实施例同样给出了熟人二进制编码的一种具体方案,即最高位也为1,其余位的二进制码分别表示不同的熟人。为了区别于陌生人二进制编码,将所述其余位的二进制码限定为不全为0。值得说明的是,本实施例只是给出人员二进制编码的一种较佳的实施方式,供本领域技术人员参考,并不排斥或否定其它可行的编码方式。
[0083]
作为一可选实施例,所述二进制编码的调制方法包括:
[0084]
所述二进制编码的每位1和0分别对应一段等时长的正弦信号,1对应的正弦信号频率高于0对应的正弦信号频率。
[0085]
本实施例给出了利用所述二进制编码对电压驱动信号进行调制的一种技术方案。本实施例的电压驱动信号采用最简单的正弦信号,利用所述二进制编码对所述正弦信号的频率进行调制。具体地,电压驱动信号由多段等时长的等幅正弦信号组成(幅度大小随目标人脸的相对位置变化而变化),每段正弦信号对应一位二进制码,0、1对应不同频率的正弦信号,0对应的正弦信号频率较低,1对应的正弦信号频率较高。盲人可根据每个时段震动器震动频率的高低识别出二进制编码。当然,要想准确快速地识别出二进制编码,可能需要经
过一定时间的训练、熟悉过程。
[0086]
作为一可选实施例,0对应零信号即不震动,1对应某一频率的正弦信号。
[0087]
本实施例是上一实施例的特例。本实施例中,使二进制码0对应的频率最小,即0hz,也就是所述正弦信号变成了直流信号。由于震动器输入一定幅度的直流信号时一般会产生电流过载,因此本实施例将0对应的信号设定为零信号,即使其幅度也为0,也就是使震动器停止震动。
[0088]
作为一可选实施例,所述人脸库包括熟人人脸库和陌生人人脸库,分别用于保存熟人人脸特征向量和陌生人人脸特征向量;所述方法还包括人脸库周期更新步骤:
[0089]
分别计算当前更新周期内获取的每个人脸特征向量与熟人人脸库中的每个特征向量的相似度;
[0090]
若某个人脸特征向量与熟人人脸库中的每个特征向量的相似度均小于设定的第一阈值,则将所述人脸特征向量加入非熟人集合m;
[0091]
对非熟人集合m中的特征向量进行聚类,得到若干个聚类后的簇;计算特征向量个数大于第二阈值的簇中的所有特征向量的平均值,得到均值特征向量,并从非熟人集合m中删除所述簇中的所有特征向量;
[0092]
计算所述均值特征向量与熟人人脸库中的每个特征向量的相似度,若所有相似度的值均小于设定的第一阈值,则为所述均值特征向量设定一个新的熟人二进制编码后,将其加入熟人人脸库;否则,认为所述均值特征向量已存在于熟人人脸库;
[0093]
给非熟人集合m中剩余的特征向量设定陌生人二进制编码后,将所述特征向量加入陌生人人脸库。
[0094]
本实施例给出了对人脸库进行周期更新的一种技术方案。现有技术用于人脸识别的人脸库一般不能进行自动更新。当希望增加更多的人脸时,只能手动添加人脸图像并重新更新人脸识别模型,操作相当麻烦,用户本人一般很难独立完成。为此,本实施例提出一种人脸库自动更新方法,对人脸库进行周期更新。通过将当前更新周期内获取的人脸图像的特征向量,与熟人人脸库中的特征向量进行相似度比对,建立非熟人集合m;然后对非熟人集合m进行聚类得到若干个簇,将特征向量个数超过设定阈值的簇中的特征向量的均值即均值特征向量对应的人视为熟人,所述熟人可能是当前更新周期内的新熟人,也有可能是熟人人脸库中的“老”熟人。再通过将所述均值特征向量与熟人人脸库中的特征向量进行相似度比对,确定所述均值特征向量对应的人是新熟人还是老熟人。如果是新熟人,先给所述均值特征向量设定一个新的熟人二进制编码,然后将其加入到熟人人脸库中。所述新的熟人二进制编码不同于熟人人脸库中已有的每个特征向量的熟人二进制编码。如果是老熟人,不更新熟人人脸库。最后将非熟人集合m中剩余的特征向量加入到陌生人人脸库中,当然这些特征向量的二进制编码均为陌生人二进制编码。
[0095]
图3为本发明实施例一种基于机械震动的视力障碍者提示装置的组成示意图,所述装置包括:
[0096]
人脸识别模块11,用于基于深度相机实时拍摄的视频图像,利用人脸库进行人脸检测与识别,得到目标人脸在图像中的位置及识别出的人员的二进制编码;
[0097]
角度计算模块12,用于基于所述位置和图像深度信息计算目标人脸中心偏离图像中心线的角度;
[0098]
震动提示模块13,用于生成幅度与所述角度相关且受所述二进制编码调制的电压驱动信号,将所述信号送至震动器,以机械震动方式播放人脸识别结果。
[0099]
本实施例的装置,可以用于执行图1所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。后面的其它实施例也都不再赘述。
[0100]
作为一可选实施例,所述目标人脸中心偏离图像中心线的角度的计算方法包括:
[0101]
建立以深度图像左上角为原点、以过左上角的两条直角边分别为x轴和y轴,建立直角平面坐标系;
[0102]
计算目标人脸中心的横坐标x0=x1 w/2,x1、w分别为人脸检测得到的目标人脸图像外接矩形左上角的横坐标和外接矩形宽度;
[0103]
计算深度图像中线即视野中心线的横坐标a/2,a为深度图像的宽度;
[0104]
计算目标人脸中心到视野中心线的代数距离,公式如下:
[0105]
d=λ*(x
0-a/2)
[0106]
式中,λ为一个像素点直径对应的实际长度,d为所述代数距离,d为正表示目标人脸位于视野中心线的右侧,d为负表示目标人脸位于视野中心线的左侧;
[0107]
计算目标人脸中心偏离视野中心线的角度α,公式如下:
[0108]
α=arcsin(d/r)
[0109]
式中,r为基于图像深度信息得到的目标人脸与视力障碍者的距离。
[0110]
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献