专利名称:基于人脸识别和活体检测的社保身份认证方法
技术领域:
本发明涉及一种社保身份认证方法,特别涉及一种基于人脸识别和活体检测的社
保身份认证方法。
背景技术:
随着养老保险制度的逐步完善,各省市参保人员养老金实行了社会化发放,由社 保部门直接通过金融机构将养老金发放到参保人员手中。但多年来,参保人员的生存状况 社保部门很难及时、准确的了解和掌握,因此出现了一些"死人"冒领参保人员养老金的现象。 医疗保险流失的保险金则更惊人,"一人参保,全家享用"现象尤为普遍,就"造假" 而言,表现形式有假参保人(冒名顶替)、假病人(无病就医)、假住院(挂床住院)、假病 历(更改疾病种类和提高疾病等级)、假处方(医生开出的处方与患者带走的药不符)、假 发票(报销未发生的医疗费用)、"假药"(保健品和生活用品)等。 失业保险金也存在大量流失的问题,虚报冒领、隐姓就业的人员越来越多。目前, 传统的身份认证手段和认证方法已经不能满足社会保险业务的需求,解决这一问题已成为 社保事业发展的必然趋势。 目前,社保中的五个险种(养老、医疗、失业、工伤、生育)各自都存在不同程度的 资金流失,各省市针对上述存在的社保基金流失问题提出了一些解决方案,其中最典型的 是采用指纹认证的手段,但是指纹身份认证方法存在以下几点弊端 1、初次采集指纹,要集中所有参保人员进行现场采集,管理难度大、采集时间长, 上万参保人员的地区全部采集一遍需要三年左右的时间。 2、每次指纹验证工作由于仍是现场采集,也要消耗大量人力、物力,至少要持续好 几个月。 3、异地居住的参保人员采集指纹相当困难。随着我国交通越来越发达,出行越来 越便利,异地养老越来越普遍。 4、指纹可以造假。市场上已经出现指纹手套、指纹胶带等造假物品。 5、各险种都是独立进行参保人的身份核实工作,这对社会保险基金的合理分配和
有效利用以及规范社保业务作操流程,清晰掌握参保人员的真实身份以及提高工作效率都
十分不利。
发明内容
本发明的目的在于克服上述不足之处,提供了一种应用广泛、效果显著的基于人
脸识别和活体检测的社保身份认证方法。 为实现上述目的本发明所采用的实施方式如下 —种基于人脸识别和活体检测的社保身份认证方法,其特征在于实施步骤包括
(1)建立人脸模板基础数据库;通过现场视频建模、远程视频建模和照片批量建模三种方式,快速高效的建立人脸特征模板基础数据库; (2)建立参保用户登录完成人脸识别和活体检测相结合的身份认证模块;通过匹 配当前人脸特征模板是否为基础数据库中人脸特征模板即可完成参保用户的人脸识别过 程,此过程伴随着对视频图像的活体检测操作,人脸识别和活体检测的结果表示了参保用 户此次身份认证的结果; (3)建立人脸模板库在线更新模块;认证完成后通过当前视频中人脸图像特征匹
配的相似度得分来决定是否进行当前人脸模板的数据库更新,把当前获取的最新最相似的
实时人脸样本模板存入数据库中,保证人脸数据库和参保用户面相变化保持同步; (4)建立审计查询模块,即人脸识别误识解决方法;通过调出参保用户相关认证
记录,以辅助工作人员做出正确抉择判断参保用户的认证成功记录是正确有效的记录还
是错误无效的记录,如果人工认为认证成功记录错误无效,则追回发放给该用户的社保基
金; (5)建立申诉处理模块,即人脸识别拒识解决方法;用户身份认证失败后,选择向 工作人员发送申诉请求,工作人员定期需要对用户发送的申诉请求记录进行处理;该功能 模块中显示所有用户的申诉记录;记录中包含用户基本信息、申诉时间、申诉留底照片,是 否为活体等信息,工作人员通过用户申诉记录信息对用户的身份验证情况进行再次审核并 做出处理,申诉处理中的审核方式采用多重审核模块中的机制来实施;多重审核结果为通 过的用户最终可以领取社保基金; (6)建立多重审核模块;申诉中存在的人工审核过程中,工作人员能够直接决定
参保用户其是否认证成功,或参保用户的认证记录是否有效;如果其决定权落在了一个工
作人员的手中,那么在实际的业务办理过程中,难免在利益面前少数人会为了谋取私利,参
保用户和社保工作人员同谋造假,这种情况的存在构成了该认证方法的严重漏洞;需要通
过多重工作人员的级联处理,每一个工作人员都作出了相同的处理后处理结果才有效; 该认证方法运行首先进行用户登录,从人脸模板基础数据库中读入该用户的人
脸模板,采用所述人脸识别和活体检测相结合的身份认证模块并通过前端视频设备中显示
的该用户的人脸视频流进行身份认证;若认证成功,更新模板的同时进行审计并完成社保
基金发放;若认证失败,则不发放社保基金,选择进入申诉程序,并进行多重审核,若全体工
作人员审核通过后,即完成社保基金发放。 本发明方法具有以下几个独特的创新点 1、批量建立社保人脸模板信息基础数据库的方案; 2、人脸识别和活体检测生物特性相结合解决社保身份认证的方案; 3、在线更新人脸模板方案; 4、审计功能解决人脸识别的误识方案; 5、申诉功能解决人脸识别的拒识方案; 6、多重审核功能防止社保工作人员造假的解决方案。 本发明的有益效果是本发明采用的方法与指纹识别相比,人脸识别和活体检测 技术被独特的引用到社保身份认证的应用上来,它不仅能有效的克服上述指纹的缺陷,而 且能够提高社会保险经办的服务质量和工作效率,有效抑制社保基金的流失,堵住社保基 金虚报冒领的漏洞。
4
本方法通过多种简单快捷的方式建立参保用户人脸模板基础数据库,通过匹配当 前人脸特征模板是否为数据库中人脸特征模板即可完成参保用户的人脸识别过程,此过程 伴随着对视频图像的活体检测操作,人脸识别和活体检测的结果表示了此次身份认证的结 果,认证完成后通过人脸特征匹配的相似度得分来决定是否进行当前人脸模板的更新,把 当前获取的最新最相似的实时人脸样本模板存入数据库中,保证人脸数据库和参保用户面 相变化保持同步。社保机构通过身份认证成功与否的信息,决定是否发放社保基金给参保 用户。同时在认证中提出了审计查询手段来排除误识、申诉审核手段来排除拒识的方法。 整个认证方法处理流程独特而有效,为社保基金管理与控制提供一个高效、可靠的手段,以 最大的程度减少社保基金流失,使基金使用公正、透明。各个步骤无缝衔接形成了一种有效 的社保身份认证方法,能够很好的解决社保基金流失问题。本发明方法可操作性强,适于推 广。
图1是本发明社保身份认证方法整体流程图;
图2是本发明人脸建模实施步骤框图;
图3是本发明现场视频建模实施步骤框图;
图4是本发明远程视频建模实施步骤框图;
图5是本发明批量人脸图像建模实施步骤框图;
图6是本发明身份认证实施步骤框图;
图7是本发明模板在线更新实施步骤框图;
图8是本发明多重审核实施步骤框图。
具体实施例方式
以下结合图和较佳实施例,对依据本发明提供的具体实施方式
、特征详述如下
本发明的身份认证方法整体实施流程如图1所示,具体实施步骤如下所述身份 认证,即确定当前识别图像是否为数据库中某人的图像,二者进行对比,确定当前人像和数 据库中某人是否为同一个人的过程,最终得到的是"是"或"不是"同一个人的结果。由于 社保的特殊应用要求,本发明加入了活体检测进行身份认证,因此这里的"是"代表是同一 个人,且当前识别的图像是活体成的像,而非照片和模型等非真人成的像;这里的"不是"代 表的活体和识别二者至少有一个条件不满足。 第一 用户登录。利用用户登录信息,确认该用户是否为合法的参保用户,确保以 后身份认证的安全性。 第二获取用户基础人脸模板。利用登录信息,从人脸基础模板数据库中调出指定 登录用户的人脸模板,用于人脸识别身份认证。 第三身份认证。前端视频采集设备(如摄像头,手机等)实时显示该参保用户的 人脸视频信息,从视频人脸图像中提取有效的人脸模板与该用户的原始基础人脸模板进行 匹配,得到人脸识别结果;同时利用活体检测技术检测当前视频设备中的人脸图像是否为 真人人脸成像而非其它仿冒人脸所成的像(如该人的照片,该人的仿真三维人脸模型);结 合活体检测和人脸识别匹配的结果来进行身份认证。在认证过程中对前端视频设备的人脸进行照片的留底以及人脸识别结果和活体检测结果。 第四认证成功处理方式。首先如果认证成功后,把认证结果发送至社保基金发放 中心,告诉基金发放中心,此用户是合法的真实的社保基金领取人,而非冒领人;其次通过 记录人脸识别结果的相似度阈值,决定是否对该用户的人脸模板数据进行在线更新,以保 证人脸特征模板和该用户面相特征变化保持同步;再次,社保工作人员可以通过审计查询 的方法,再次对认证通过记录进行逐条或者有选择性的人工查处,确保认证记录的真实有 效性。 第五认证失败处理方式。认证失败有两种情况一种是活体检测没有通过,即可 以断定前端摄像头人脸是用该用户的真实照片或者其仿真三维模型等非活体人脸所成的 像来进行的认证;另一种是人脸识别没有通过,即可以判定前端摄像头人脸成的像为活体 成像,但是不为该参保用户本人亲自的认证过程。在这个环节中,本发明讲述的身份认证方 法为了弥补人脸识别算法中少之又少的拒识率(即错误拒绝率是用户本人在认证,但是 认证失败的情况),提出通过申诉来处理拒识。 第六申诉处理。社保的工作人员通过查看认证失败的认证记录,包括原始基础人 脸照片,认证失败时抓取的视频中的人脸照片,人脸识别相似度得分,活体检测结果,进行 工作人员人工排查,如果人工确认该用户的基础照片和认证时照片一致即为同一人,同时 活体检测结果表明是活体,则可以认为该用户是错误拒识的人,最终判定该用户是否为错 误拒识通过采用多重审核的模块来实施,必须同时通过A、 B和C三个不同级别工作人员的 级联审核的结果来确定该用户是否为错误拒识用户。 第七社保基金发放。如果参保用户的身份认证结果为认证成功,则社保基金将发 放社保基金给该用户,否则不发放社保基金给该用户。
本发明方法具体描述如下 整个方法涉及到以下几大具体功能模块,现将详细阐述每一个模块的具体处理方 法 (1)建立人脸模板基础数据库; a)和指纹识别认证方法相比,人脸识别认证的基础模板数据库的建立会更加快 速,方便,省时,省力。对于初次采集指纹,要集中所有参保人员进行现场采集,管理难度大、 采集时间长,上万参保人员的地区全部采集一遍需要三年左右的时间。另外每次指纹认证 工作由于仍是现场采集,也要消耗大量人力、物力,至少要持续好几个月,所以在科技和生 物识别技术高速发展的今天,必将被更高一级的认证方法所替代。 如图2为人脸建模的具体实现过程即人脸图像提取人脸模板的处理过程。本发明 通过该方法建立与参保用户一对一的人脸模板基础数据库。在进行人脸模板获取时,只需 要参保人员的一张符合建模标准和要求的人脸电子照片即可,无需要进行现场采集,可以 自动实现大批量照片的人脸建模,整个过程完全自动进行,既无需社保经办机构工作人员 的操作,也无需参保用户配合,完全在参保用户毫无知觉的情况下进行。既节省了大量人力 物力,也节省了大量硬件资源。 图2中用户人脸图像采集用于采集包含用户人脸的图像;人脸检测用于确定视频 中人脸的位置和大小;而特征点定位用于定位眼睛、嘴巴等脸部特征点的位置;图像质量 评估,用于从采集的同一个人的多张人脸图像中,根据人脸姿态和光照条件选择最适合识别的一张或者几张人脸进行人脸建模;人脸特征提取模块用于根据眼睛位置将人脸进行标
准化,得到设定大小的脸部区域,并提取用于识别的人脸特征。保存用户人脸模板,即把提
取出的用户人脸特征保存在基础人脸模板数据库中,以便在以后的人脸识别中将库中保存
的模板调出来与该用户当时的实时人脸图像进行匹配,完成人脸识别过程。 该方法中,人脸建模可以有以下几种表现形式现场视频建模如图3所示,远程视
频建模如图4所示,批量人脸图像建模如图5所示。 b)现场视频建模在社保经办机构,通过视频采集设备采集参保用户人脸多帧图 像,通过人脸识别算法提取特征模板保存到人脸模板数据库。通过现场建模方式,使人脸模 板数据库包含了每个参保用户人脸的不同角度和尺度的多个图像样本的特征,保证了用户 人脸特征模板数据库的完整性,能够建立最优的人脸模板库,这对用户以后的身份验证成 功率十分有利,可以有效的提高人脸识别算法的识别率。 c)远程视频建模可以要求参保用户上传能够证明自己身份的有效证件,如身份 证扫描的电子版本,然后通过终端的摄像头进行视频建模并对建模照片留底,把当前用户 的模板和留底照片保存为待审核的人脸模板数据库中;社保工作人员对该人的留底照片和 证件证明图片进行匹配对比审核,确认该人的信息有效后,把该人的模板转移至人脸特征 模板数据库中。 d)批量人脸图像建模可以从公安局申请当前所有参保用户的身份证照片,利用 如图2所示的人脸图像提取人脸特征模板的处理过程完成单张数字人脸图像的建模,然后 应用循环和分布式并行两种手段完成不同参保用户的照片建模实现大批量用户模板提取, 建立身份认证方法依赖的完整的人脸模板基础数据库。
(2)建立参保用户登录完成人脸识别和活体检测相结合的身份认证模块;
本身份认证方法依赖的结果有两个一个是人脸识别的识别结果,验证当前识别 人员是否为数据库中已知身份的某参保人员;另一是活体检测的结果,验证当前识别人员 是否为活体,而非照片或者其他立体模型假冒的身份识别。 认证方法中还具有一个单一 目标识别的功能,即判定摄像头是否一直采集的是一 个人的视频。当用户先采用真人进行活体认证,再采用照片进行人脸识别时,本发明可以判 定其采用了不同的目标进行活体检测和识别,并给出提示信息,记录并据除。在本发明人脸 认证中采用了人脸跟踪技术实现单一目标识别功能,即首先采用人脸检测找到图像中的人 脸位置,然后,采用人脸跟踪技术,找到后面各帧中和第一次检测的人对应的目标,如果无 法找到,则当前目标的跟踪结束。继续采用人脸检测寻找视频图像中的人脸,并重新开始跟 踪下一个目标。这样就能够区分连续出现的两个目标,在处理中,将他们作为两个目标进行 处理。 一个目标必须同时既能够通过活体认证,同时,又需要通过人脸识别才会完成一次完 整的身份认证过程。 身份认证方法的具体实施如图6所示 a)从前端视频采集设备中获取实时人脸视频图像,进行人脸检测和跟踪; b)在确认当前图像时同一目标的前提下进行人脸特征点定位,找到人脸的眼睛嘴
巴等比较明显的特征点; c)归一化人脸图像以及筛选图像质量和光线较佳的图片,进行人脸特征提取,进 而得到当前视频中人脸的模板;
d)从人脸模板基础数据库中调出需要认证的用户人脸模板与当前视频中人脸模 板进行特征匹配,得到一个匹配结果即人脸识别结果;与此同时并行进行处理的还有活体 检测功能,实现实时的检测视频中的人脸图像是否为活体成像,得到活体检测的结果;
e)活体检测的结果和人脸识别的结果同时满足,此时认证成功,否则认证失败。
(3)建立人脸模板库在线更新模块; 针对社保应用时间跨度大,建模照片少的情况,认证方法设计了自动学习和在线 更新用户特征模块数据库的功能。如果实际应用中只有建模时的一张照片,当用户几年后 使用时,必然会由于用户面貌的改变造成认证方法识别率的下降。
模板更新机制通过以下两种方式可以实现 a)选择从当前认证成功的用户人脸图像中选择特征匹配相似度高的样本模板作 为更新模板添加到指定参保用户模板中,用户的一张人脸图像样本对应其一个人脸模板, 一个用户允许有多个人脸图像样本模板,从而实现在无需用户操作的情况下,不断的更新 人脸数据库。 b)设置数据库中保存一个用户模板样本数的最大值,当参保用户的样本模板总数 超过系这个极大值时,当前满足更新条件的更新模板会以替换以前的相似度最低的更新模 板的方式存入对应用户的模板空间中,但是基础模板自始至终都予以保留。这样使数据库 中用户的模板总是与参保用户的面相特征变化保持同步,从而提高人脸识别算法准确率。
以上更新机制的好处体现在既不断通过扩展模板完整性提高识别率,同时也克服 了随着时间推移,参保用户的面部变化造成的识别率下降的问题。此外,当用户的人脸模板 数目达到一定程度后,本发明可以自动为该用户建立一个人脸模型以及一套适合该用户的 定制参数,从而针对不同用户的情况进行定制化识别,克服人脸识别算法中少之又少的误 识率和拒真率。 模板更新的具体实施步骤如图7所示 a)获取本次成功认证的用户当前视频人脸图像样本模板的特征匹配结果中的相
似度得分最大值,判断该得分值是否满足更新条件,不满足则不更新模板,满足进入下一
止 少; b)获取本次认证中特征匹配相似度得分最大值对应的当前视频人脸图像样本模 板数据M。 c)判断该用户对应的技术数据库中模板样本数是否已经达到上限(数据库模板
存储空间上限),如果没有达到上限,转第四步,否则转第五步; d)直接把M加入到用户对应的基础模板数据库中,完成本次更新。 e)找到该用户基础数据库中相似度得分最低的模板N ; f)将模板N替换成模板M,完成本次更新。
(4)建立审计查询模块(人脸识别误识解决方案); 认证方法中的审计查询功能是为了弥补算法极小的误识率而提出来的解决方案。
审计功能允许社保工作人员针对认证通过了的参保用户进行的第二次人工身份 确认的过程,通过人工审核算法验证通过的参保用户中存不存在假冒识别行为。
审计功能中,工作人员可以对参保用户的记录进行两种执行结果
a)正常即此验证记录是有效的,不需要执行任何操作;
c)假冒即此验证记录是无效的,对参保用户的此次验证记录作无效处理,追回 已发放给该用户的社保基金。 社保工作人员利用审计功能,调出参保用户相关验证记录,以辅助工作人员做出
正确判断,进一步弥补了算法存在极小误识的漏洞。
(5)建立申诉处理模块(人脸识别拒识解决方案); 认证方法中的申诉功能是为了弥补算法的极小的拒真率而提出来的解决方案。
当用户多次采用身份验证功能进行身份验证均失败后,本发明提出通过申诉来解 决算法的拒真率,使少数是本人认证,但认证失败的用户有办法领取社保基金。
工作人员定期需要对用户发送的申诉请求记录进行处理。该功能模块中显示所有 用户的申诉记录。记录中包含用户基本信息、申诉时间、申诉留底照片,是否为活体等信息, 工作人员通过用户申诉记录信息对用户的身份验证情况进行再次审核并做出处理,申诉处 理中的审核方式采用多重审核模块中的机制来实施。
处理结果分以下两种 a)申诉成功当通过人工查看本次认证实时视频留底照片和其对应的基础留底 照片是同一个人,而且根据验证记录其活体验证成功,但是识别失败,那么社保工作人员会 给予改参保用户的申诉记录审核通过,其结果同认证成功;用户拥有领取社保基金的权限。
b)驳回申诉当通过人工查看本次认证实时视频留底照片和其对应的基础留底 照片是不是同一个人,或者根据验证记录其活体验证记录的记过表面活体检测失败,即为 非活体的验证,那么社保工作人员会给予改参保用户的申诉记录审核进行驳回,其结果同 认证失败,用户无权领取社保基金。
(6)建立多重审核模块 本发明提出的认证方法自始至终从社保工作业务流程的实际情况出发,为了杜绝 社保工作人员内部和参保用户合伙造价谋取非法福利的行为,对需要社保工作人员参与的 人工审核模块如申诉中存在的人工审核过程中,工作人员能够直接决定参保用户其是否
认证成功,或参保用户的认证记录是否有效。如果其决定权落在了一个工作人员的手中,那 么在实际的业务办理过程中,难免在利益面前少数人会为了谋取私利,参保用户和社保工 作人员同谋造假,这种情况的存在构成了该认证方法的严重漏洞。本方法提出的多重审核 功能有效的解决上述问题,即当需要确定某参保用户的申诉是否成功,需要通过多重工作 人员的级联处理。
多重审核实施步骤如图8所示 a)工作人员A审核认证失败的用户是否为错误拒识用户,如果是则转第二步,否 则直接标记该用户为认证失败。 b)工作人员B审核工作人员A审核通过的用户是否为错误拒识用户,如果是则转 第三步,否则直接标记该用户为认证失败。 c)工作人员C审核工作人员B审核通过的用户是否为错误拒识用户,如果是则转
第四步,否则直接标记该用户为认证失败。 d)标记该用户身份认证成功。 根据认证成功与否进行社保基金的发放。 如果参保用户的身份认证结果为认证成功,则社保基金将发放社保基金给该用户,否则不发放社保基金给该用户。 上述参照实施例对该基于人脸识别和活体检测的社保身份认证方法进行的详细 描述,是说明性的而不是限定性的;因此在不脱离本发明总体构思下的变化和修改,应属本 发明的保护范围之内。
权利要求
一种基于人脸识别和活体检测的社保身份认证方法,其特征在于实施步骤包括(1)建立人脸模板基础数据库;通过现场视频建模、远程视频建模和照片批量建模三种方式,快速高效的建立人脸特征模板基础数据库;(2)建立参保用户登录完成人脸识别和活体检测相结合的身份认证模块;通过匹配当前人脸特征模板是否为基础数据库中人脸特征模板即可完成参保用户的人脸识别过程,此过程伴随着对视频图像的活体检测操作,人脸识别和活体检测的结果表示了参保用户此次身份认证的结果;(3)建立人脸模板库在线更新模块;认证完成后通过当前视频中人脸图像特征匹配的相似度得分来决定是否进行当前人脸模板的数据库更新,把当前获取的最新最相似的实时人脸样本模板存入数据库中,保证人脸数据库和参保用户面相变化保持同步;(4)建立审计查询模块,即人脸识别误识解决方法;通过调出参保用户相关认证记录,以辅助工作人员做出正确抉择判断参保用户的认证成功记录是正确有效的记录还是错误无效的记录,如果人工认为认证成功记录错误无效,则追回发放给该用户的社保基金;(5)建立申诉处理模块,即人脸识别拒识解决方法;用户身份认证失败后,选择向工作人员发送申诉请求,工作人员定期需要对用户发送的申诉请求记录进行处理;该功能模块中显示所有用户的申诉记录;记录中包含用户基本信息、申诉时间、申诉留底照片,是否为活体等信息,工作人员通过用户申诉记录信息对用户的身份验证情况进行再次审核并做出处理,申诉处理中的审核方式采用多重审核模块中的机制来实施;多重审核结果为通过的用户最终可以领取社保基金;(6)建立多重审核模块;申诉中存在的人工审核过程中,工作人员能够直接决定参保用户其是否认证成功,或参保用户的认证记录是否有效;为保证该认证正确无误,需要通过多重工作人员的级联处理,每一个工作人员都作出了相同的处理后处理结果才有效;该认证方法运行首先进行用户登录,从人脸模板基础数据库中读入该用户的人脸模板,采用所述人脸识别和活体检测相结合的身份认证模块并通过前端视频设备中显示的该用户的人脸视频流进行身份认证;若认证成功,更新模板的同时进行审计并完成社保基金发放;若认证失败,则不发放社保基金,选择进入申诉程序,并进行多重审核,若全体工作人员审核通过后,即完成社保基金发放。
全文摘要
本发明涉及一种基于人脸识别和活体检测的社保身份认证方法,实施步骤包括建立人脸模板基础数据库、参保用户登录完成人脸识别和活体检测相结合的身份认证模块以及人脸模板库在线更新模块、审计查询模块、申诉处理模块、多重审核模块。该认证方法运行首先进行用户登录,取该用户的人脸模板,采用所述人脸识别和活体检测相结合的身份认证模块并通过前端视频设备中显示的该用户的人脸视频流进行身份认证;若认证成功,更新模板的同时进行审计并完成社保基金发放;若认证失败则进入申诉程序进行多重审核,如果全体工作人员审核通过后,即可完成社保基金发放。该方法能够提高社会保险经办的服务质量和工作效率,有效抑制社保基金的流失。
文档编号G06K9/00GK101770613SQ20101003137
公开日2010年7月7日 申请日期2010年1月19日 优先权日2010年1月19日
发明者戴水艳, 王栋, 邱建华 申请人:北京智慧眼科技发展有限公司