想象一下,你第一次去办身份证,摄影师让你坐直、看镜头,然后“咔嚓”一声拍下照片。但你知道吗?那张照片并不能直接用在证件上——照片里可能有杂乱的背景、头顶的电灯、衣领的阴影。工作人员需要先“裁剪”出你的脸,再缩放到标准尺寸,最后检查照片是否清晰、光线是否合格。这一整套流程,就是“证件照前处理”。 虹膜识别,做的是同一件事。摄像头拍下的“眼睛照片”里,虹膜只占一小块区域,旁边还有眼白、眼皮、睫毛、甚至眼镜反光。如果直接拿这些原始数据去做身份比对,结果必然乱成一团。所以,在真正开始“认人”之前,AI需要先完成三步:分割(从照片里圈出虹膜)、归一化(把环形虹膜拉平、统一尺寸)、质量评估(判断这张照片够不够格)。这就是虹膜识别的前处理阶段——如同证件照拍摄前的“裁脸、缩放、质检”。一个刚入行的AI从业者,如果连这一步的原理都理解不透,后续的特征提取和匹配就无从谈起。
对AI从业者而言,掌握分割与归一化意味着你理解了任何生物特征识别系统的“入口工程”——数据质量决定算法上限,这是从“调包侠”走向“系统架构师”的关键一跃。
可视化演示
本节配有交互动效(进入视口后自动加载,约 3KB)。
虹膜边界检测 Daugman积分微分算子 梯度积分最大圆为边界 max|∂/∂r ∮ I(x,y)/2πr ds| 定位瞳孔与虹膜外边界
图像采集与预处理
还记得证件照流程的第一步吗?摄影师会让你坐在一个特定背景前,用专业灯光照明。为什么?因为拍得好,后面才能裁得好。虹膜识别的第一步,也是“拍照”——图像采集与预处理。与普通照片不同,虹膜识别通常使用近红外光照明。为什么呢?因为近红外光对深色虹膜的穿透力更强,能照出清晰的虹膜纹理,同时对眼睛无害,人眼几乎感觉不到。
在拿到原始图像后,第一件事是灰度化。虹膜纹理本质上是灰度纹路,颜色信息(如棕色、蓝色)对于身份识别没有帮助,保留灰度反而能减少计算量。紧接着是去噪——摄像头传感器可能会引入噪点,通常用高斯滤波来平滑。最后是直方图增强:有些人的虹膜纹理很浅,对比度不足,需要通过直方图均衡化来“拉伸”灰度分布,让纹理变得更清楚。
回到证件照的比喻:灰度化相当于去掉背景色,去噪相当于抹掉镜头上的灰尘,直方图增强相当于调亮光线。做完这些,你的“脸”(虹膜)才算被清晰地呈现在照片上,可以进入下一步——裁剪。
- 灰度化 $I_{gray}$将彩色图像转换为单通道灰度图,保留亮度信息,丢弃颜色信息。
- 高斯滤波 $G_{\sigma} * I_{gray}$用高斯核与图像做卷积,平滑噪声。
- 归一化 Normalize将像素值线性映射到 $[0, 1]$ 区间。
内外边界检测
现在,摄影师要“裁脸”了。裁脸的基准是什么?是让你的脸恰好占满相框。虹膜分割的目标,是要找到虹膜的两条边界:内边界(瞳孔与虹膜的交界)和外边界(虹膜与眼白/巩膜的交界)。一旦确定了这两个圆,虹膜区域就被“框”出来了。
最经典的方法是 John Daugman 提出的微积分检测算子(Integro-differential Operator)。它的思路很直观:沿着一个圆弧,计算圆内与圆外的灰度差异。当圆弧恰好落在虹膜边界上时,圆内(瞳孔或虹膜)与圆外(虹膜或巩膜)的灰度差异最大——就像你把相框边缘刚好对齐脸庞轮廓时,“框内”和“框外”的差异最明显。
实际工程中,Daugman 算子会先从瞳孔区域开始搜索(内边界),再在瞳孔中心附近搜索外边界。还有一种备选方案是 Hough 变换(霍夫变换)——将图像空间中的点映射到参数空间,通过投票找出最可能的圆。Hough 变换更稳健但更慢,Daugman 算子更快但在噪声多时容易误检。两者就像是“经验丰富的老师傅用手比划”和“用尺子一寸寸量”——各有优劣。
- 圆周积分 $\oint \frac{I(x,y)}{2\pi r} ds$计算圆周上像素灰度的平均值。
- 径向偏导 $\frac{\partial}{\partial r}$让半径 $r$ 稍微增大一点,看圆周平均灰度变化了多少。
- 高斯平滑 $G_{\sigma}(r)$对导数结果做平滑,消除噪声干扰。
- 最大化 $\max$遍历所有圆心和半径,找出灰度变化最大的圆。
眼睑与睫毛遮挡处理
证件照拍摄时,如果头发挡住了脸,摄影师会让你拨开头发。但虹膜识别没法要求人“拨开眼皮”,所以必须处理遮挡问题。眼睑,尤其是上眼睑,经常挡住虹膜的上半部分;睫毛则可能投下阴影,干扰纹理提取。
处理眼睑遮挡的经典方法是用抛物线拟合。眼睑的形状近似抛物线,所以算法会在眼睑边缘检测出一组点,然后用最小二乘法拟合出一条抛物线,标记为遮挡区域。下眼睑通常也用类似方法处理,只是抛物线的开口方向不同。
至于睫毛,它的特征是细长且灰度值低。通常用阈值分割——把灰度低于一定值的像素视为睫毛,再通过形态学操作去除零星噪点。反射光斑(眼镜或角膜的反光)则是高亮区域,同样可以用阈值法去除。这就像修图软件里的“污点修复”——把挡住虹膜的杂念统统抹掉,只留下干净的“纹理区”。
- 边缘点检测先找到眼睑与虹膜的交界像素点。
- 最小二乘拟合求抛物线参数,使所有点到抛物线的距离平方和最小。
- 遮挡标记抛物线以上(或以下)的虹膜区域标记为“遮挡”。
归一化橡胶板模型
证件照裁好脸之后,要缩放到统一尺寸——无论你脸大脸小,最终照片都是 2 寸。虹膜也一样:不同人的虹膜大小不同,同一个人在不同距离下拍摄,虹膜大小也不同。为了让后续比对不受大小、位置的影响,需要把环形的虹膜“拉平”成一个统一的矩形。这就是归一化。
Daugman 提出了著名的橡胶板模型(Rubber Sheet Model):想象虹膜是一张橡皮膜,它的内边界(瞳孔边缘)和外边界(虹膜边缘)之间夹着一个环形区域。现在,把这个环形区域径向拉伸、周向展开,变成一个固定尺寸的矩形。这样一来,不管原图里虹膜是 50 像素还是 200 像素,归一化后都是 64×512 的矩形。
归一化还有一个额外的好处:旋转对齐。如果拍摄时头部有轻微偏转,虹膜图案在圆周方向上会发生平移。归一化后,这种平移表现为水平方向上的循环位移,可以在后续匹配阶段通过平移搜索来消除。这就像你把照片旋转正了再裁剪——角度偏了,拉直就好。
- 径向坐标 $r$$r \in [0, 1]$,表示从内边界到外边界的相对位置。
- 角度坐标 $\theta$$\theta \in [0, 2\pi]$,表示圆周方向的角度。
- 内边界采样点 $(x_p, y_p)$在 $\theta$ 方向上,瞳孔边界上的点。
- 外边界采样点 $(x_s, y_s)$在 $\theta$ 方向上,虹膜外边界上的点。
- 线性插值 $x(r,\theta)$在内外边界之间按 $r$ 比例插值。
图像质量评估
证件照拍摄的最后一步是质检:若照片模糊、光线不足、闭眼了,工作人员会让重拍。虹膜识别系统也有同样的“质检员”——图像质量评估。如果一张图片质量不合格还强行识别,比对结果必然不靠谱,误识率和拒识率都会飙升。
质量评估通常检查三件事:清晰度(图像是否模糊)、遮挡比例(虹膜有多大面积被眼皮或睫毛挡住)、对比度(纹理是否清晰可辨)。清晰度可以用图像的梯度能量或拉普拉斯方差来衡量——如果图像模糊,相邻像素之间的差异会很小,梯度能量也就很低。
在工程中,遮挡比例的计算也很关键:在归一化矩形中,被标记为遮档的像素数占总像素数的比例,通常要求低于 30%~50%。对比度则用归一化后纹理的灰度标准差来衡量。如果拍照时人没看镜头、眼睛半闭、或光照太暗,质量评估会直接返回“请重拍”的提示——这正是安检机上你看到的“请正对镜头”提示的背后逻辑。
- 二阶导数计算每个像素在 $x$ 和 $y$ 方向的二阶偏导,捕捉灰度突变。
- 平方求和对全图所有像素的二阶导数值平方求和,得到总体锐度。
- 阈值判定若 $S$ 低于预设阈值 $T$,则判定图像模糊。
工程应用与实战
现在回到现实世界。在高安全等级的机场安检口,你走到一台虹膜识别设备前,屏幕上的引导框对准你的眼睛。“咔嚓”一声,采集完成;处理器在毫秒级完成分割和归一化;系统从数据库中检索出你的身份模板进行比对;“叮”的一声,闸门打开。整个过程不到 3 秒。这背后,正是我们前面讲的完整链路:
1. 采集模块:近红外摄像头 + 主动照明,保证图像质量稳定。
2. 前处理模块:分割(Daugman 算子定位边界)→ 遮挡处理(拟合眼睑抛物线、排除睫毛)→ 归一化(橡胶板模型展开为矩形)→ 质量评估(不合格则触发重拍)。
3. 特征提取与匹配模块:从归一化矩形中提取纹理特征,与数据库模板比对。
工程中还需要考虑帧率和延迟优化。例如,Daugman 算子的搜索空间很大,通常会用粗定位(快速缩小搜索范围)+ 精定位(在小范围内精细搜索)两阶段策略。此外,归一化后的矩形尺寸也需要权衡——尺寸越大纹理信息越丰富,但存储和计算开销也越大。一个典型的设定是 64 像素(径向)× 512 像素(角度)。
性能指标方面,常用 FAR(误识率,把别人认成自己)和 FRR(拒识率,把自己人拒之门外)。在门禁系统中,FAR 通常要求低于 0.001%,FRR 低于 1%。这就像证件照质检:宁可让合格的人多拍一次(FRR 高),也不能让不合格的照片混入档案(FAR 高)。
从“证件照”到“虹膜识别”,核心逻辑一脉相承:好的素材是成功的一半。掌握了分割和归一化,你就掌握了虹膜识别系统的“地基”——地基稳,上面的特征提取和匹配才能发挥威力。
AI 应用场景
机场安检身份核验
阶段:前处理(图像采集→分割→归一化→质量评估)
解决的问题:传统人工核验安检身份时,工作人员需要肉眼比对护照照片与本人,速度慢且容易疲劳出错。虹膜识别系统通过近红外相机采集眼睛图像,自动完成虹膜分割与归一化,在 3 秒内完成身份比对。质量评估模块会在图像模糊或遮挡比例过高时自动提示重拍,避免无效比对。
具体案例:某国际机场部署了 20 台虹膜识别闸机,旅客只需注视设备约 1.5 秒,系统即完成采集与识别。上线后,单旅客平均通行时间从 12 秒降至 5 秒,冒用他人证件的事件减少 90%。其核心前处理模块正是基于 Daugman 算子定位边界 + 橡胶板模型归一化 + 拉普拉斯清晰度评估的经典流程。
金融级门禁系统
阶段:图像质量评估 + 归一化后特征提取
解决的问题:银行金库等高安全区域需要比指纹更难以伪造的身份认证方式。虹膜识别系统在本地完成图像质量评估,只有清晰度、遮挡比例、对比度全部达标才允许进入特征比对流程,从源头杜绝了低质量图像导致的误识风险。
具体案例:某银行数据中心采用虹膜门禁系统,将归一化尺寸设定为 128×1024 像素以保留更多纹理细节,配合严格的质量阈值(遮挡比例 < 25%),系统运行一年内 FAR 为 0,FRR 为 0.8%。访客平均认证时间为 2.2 秒。
移动设备虹膜解锁
阶段:分割 + 归一化(轻量化实现)
解决的问题:手机端算力有限,需要将虹膜分割算法轻量化。通常用 Hough 变换替代 Daugman 算子以利用硬件加速,归一化尺寸降低到 32×256,在保证安全性的同时把单次识别延迟控制在 200ms 内。
具体案例:某旗舰手机在夜间暗光环境下默认启用虹膜解锁。当用户点亮屏幕时,红外摄像头同步启动采集,分割模块在 50ms 内完成瞳孔与虹膜边界定位,归一化模块生成 32×256 的矩形纹理,最终匹配在 150ms 内完成,整体解锁体验与指纹接近。
Python 演示
import numpy as npfrom scipy import ndimageimport math def daugman_pupil_detect(image, center_r, center_c, r_min, r_max): """ 简化的 Daugman 微积分算子:搜索瞳孔边界圆。 image: 灰度图 (H, W) center_r, center_c: 搜索中心的候选坐标 r_min, r_max: 搜索半径范围 返回: (best_r, best_c, best_score) """ img = image.astype(np.float64) H, W = img.shape best_score = -1.0 best_r = r_min best_c = center_c best_r_center = center_r # 预计算角度采样点(圆周方向) angles = np.linspace(0.0, 2.0 * math.pi, 36, endpoint=False) for r in range(r_min, r_max + 1): # 在内圈和外圈的半径差上做灰度变化率近似 r_inner = r r_outer = r + 2 sum_inner = 0.0 sum_outer = 0.0 count_inner = 0 count_outer = 0 for a in angles: # 内圈采样点 x1 = int(round(center_c + r_inner * math.cos(a))) y1 = int(round(center_r + r_inner * math.sin(a))) # 外圈采样点 x2 = int(round(center_c + r_outer * math.cos(a))) y2 = int(round(center_r + r_outer * math.sin(a))) if 0 <= x1 < W and 0 <= y1 < H: sum_inner += img[y1, x1] count_inner += 1 if 0 <= x2 < W and 0 <= y2 < H: sum_outer += img[y2, x2] count_outer += 1 if count_inner > 0 and count_outer > 0: avg_inner = sum_inner / count_inner avg_outer = sum_outer / count_outer score = abs(avg_inner - avg_outer) if score > best_score: best_score = score best_r = r best_c = center_c best_r_center = center_r return best_r, best_c, best_score def normalize_iris(image, center_r, center_c, r_pupil, r_iris, radial=32, angular=128): """ 用极坐标映射(橡胶板模型)将环形虹膜归一化为矩形。 返回: iris_rect (radial, angular) """ H, W = image.shape angles = np.linspace(0.0, 2.0 * math.pi, angular, endpoint=False) iris_rect = np.zeros((radial, angular), dtype=np.float64) for i in range(radial): # 从内边界线性插值到外边界 r_ratio = i / (radial - 1) if radial > 1 else 0.0 for j in range(angular): a = angles[j] x = center_c + (r_pupil + r_ratio * (r_iris - r_pupil)) * math.cos(a) y = center_r + (r_pupil + r_ratio * (r_iris - r_pupil)) * math.sin(a) if 0 <= int(y) < H and 0 <= int(x) < W: iris_rect[i, j] = image[int(y), int(x)] return iris_rect def main(): # 生成一张模拟眼睛图像(带瞳孔和虹膜) H, W = 200, 240 img = np.full((H, W), 180.0, dtype=np.float64) center_r, center_c = 100, 120 # 圆心 # 瞳孔(灰度 40) for y in range(H): for x in range(W): d = math.hypot(x - center_c, y - center_r) if d < 30: img[y, x] = 40.0 # 瞳孔 elif d < 70: img[y, x] = 100.0 # 虹膜,简单纹理用正弦波纹 img[y, x] += 15.0 * math.sin(d * 0.3) * math.cos((x - center_c) * 0.05) else: img[y, x] = 200.0 # 巩膜 # 用高斯滤波模拟轻微噪声 img_blur = ndimage.gaussian_filter(img, sigma=1.0) # Daugman 瞳孔定位 r, c, score = daugman_pupil_detect(img_blur, center_r, center_c, 20, 45) print("瞳孔半径估计:", r, "分数:", round(score, 2)) # 瞳孔中心附近继续搜索外边界(简化为固定范围) r_iris, _, score_iris = daugman_pupil_detect(img_blur, center_r, center_c, 55, 80) print("虹膜外半径估计:", r_iris, "分数:", round(score_iris, 2)) # 归一化 iris_rect = normalize_iris(img_blur, center_r, center_c, r, r_iris, radial=32, angular=128) print("归一化矩形形状:", iris_rect.shape, "均值:", round(iris_rect.mean(), 2)) if __name__ == "__main__": main()
daugman_pupil_detect(img, cx, cy, r_min, r_max)在候选圆心周围搜索灰度变化最大的圆,模拟微积分算子angles = np.linspace(0, 2*math.pi, 36, endpoint=False)在圆周方向采样 36 个点,平衡速度与精度score = abs(avg_inner - avg_outer)圆内与圆外平均灰度差异,差异最大处即边界normalize_iris(..., r_pupil, r_iris, radial=32, angular=128)橡胶板模型的直接实现,径向 32 行、角度 128 列r_ratio = i / (radial - 1)径向位置从 0(瞳孔侧)到 1(虹膜外侧)线性变化x = center_c + (r_pupil + r_ratio * (r_iris - r_pupil)) * cos(a)极坐标到直角坐标的映射,完成“环形变矩形”ndimage.gaussian_filter(img, sigma=1.0)模拟真实摄像头的模糊/噪声,测算法鲁棒性
常见误区
误区我刚开始学虹膜分割时以为,所谓分割就是拿 Hough 变换检测一个圆,把虹膜圈出来就完事了。感觉和 OpenCV 里检测硬币差不多,没什么技术含量。
正解真实场景中,眼睑遮挡、睫毛阴影、反射光斑、运动模糊都会让“画圆”变得极难。Daugman 算子之所以经典,在于它对光照变化和噪声更鲁棒;而遮挡处理(抛物线拟合眼睑、阈值排除睫毛)才是工程中真正决定识别率的部分。分割远不止“找到圆”,而是“在恶劣条件下仍然稳定地找到圆”。
为何常见:因为教材和博客通常只展示“完美图像”上的分割结果,让人误以为边界检测天然简单。没有经历过真实采集数据的脏乱差,就容易低估这一环节的复杂度。
误区归一化就是把像素值缩放到 0 到 1 之间吧?这个我熟,就是 (x - min) / (max - min)。所以归一化这一步很简单。
正解在虹膜识别语境里,“归一化”特指几何归一化——把环形虹膜通过极坐标映射展开成统一尺寸的矩形,消除虹膜大小、瞳孔缩放的影响。像素值缩放叫“标准化”或“灰度归一化”,是预处理阶段做的事。两者完全不同,混用会导致理解偏差。
为何常见:因为很多 ML 教程把“feature scaling“翻译成”归一化“,初学者便把这个概念套用到所有”归一化”术语上,忽略了虹膜识别领域专属的含义。
误区我以为虹膜识别的核心就是分割做得准、归一化做得好,质量评估不过是个“锦上添花”的评分卡,可有可无。
正解质量评估是拒识率(FRR)的直接决定因素。没有质量评估兜底,模糊、遮挡严重的图像会被送入匹配模块,导致大量比对错误。工程系统中,质量评估模块往往比分割模块更影响用户体验——“请重拍”的提示就是它的杰作。
为何常见:因为学术 benchmark 通常使用高质量数据集,不会体现质量评估的价值。但真实场景中 10%~20% 的采集图像是不合格的,没有质检就是灾难。
误区我查资料时看到很多现代 OpenCV 教程都用 Hough 变换检测圆,而 Daugman 算子似乎很老。新的一定比旧的好?是不是应该无脑用 Hough 变换。
正解两者各有优劣。Daugman 算子利用圆周灰度变化率,速度快且对均匀光照鲁棒,但在遮挡严重时可能误检;Hough 变换在噪声下更稳健,但计算量大、需要先做边缘检测,且对参数空间离散化敏感。工程上常结合两者:先用 Hough 粗定位,再用 Daugman 精调。
为何常见:因为“新方法更优”在深度学习时代确实常见(如 CNN 取代手工特征),人们容易线性外推。但在传统图像处理中,经典方法往往各有不可替代的适用场景。
面试题
Q1. 虹膜识别中“分割”阶段的主要目标是什么?
- A.将虹膜图像压缩成 JPEG 格式
- B.定位虹膜的内外边界,提取虹膜区域← 正确答案
- C.将彩色图像转换为灰度图像
- D.对图像进行人脸检测和对齐
答案:B。分割的目标就是“框出虹膜”——定位内边界(瞳孔/虹膜交界)和外边界(虹膜/巩膜交界),并排除眼睑等遮挡。A 是图像编码,C 是预处理,D 是人脸识别范畴,均不是分割的核心目标。
Q2. Daugman 微积分检测算子搜索虹膜边界的依据是什么?
- A.圆周上灰度均值随半径的变化率最大← 正确答案
- B.圆周上颜色饱和度最高
- C.圆周内像素的方差最小
- D.圆周半径最长
答案:A。Daugman 算子计算圆周灰度的径向导数,圆内外灰度差异最大处即为边界。类比证件照裁剪时,相框边缘对准轮廓线时“框内框外差异最明显”。饱和度、方差、最长半径都不是其判据。
Q3. 虹膜归一化(橡胶板模型)解决的核心问题是?
- A.去除图像噪声和光照不均
- B.将环形虹膜展开为统一尺寸的矩形,消除大小差异← 正确答案
- C.提高图像的对比度和清晰度
- D.检测眼睑和睫毛的遮挡区域
答案:B。不同人的虹膜大小、拍摄距离不同,导致虹膜在图像中的尺寸不一致。归一化通过极坐标映射把环形虹膜“拉平”成固定矩形(如 64×512),使后续比对不受尺寸、平移影响。A 是预处理,C 是增强,D 是遮挡处理。
Q4. 虹膜图像质量评估通常包含哪些指标?(多选)
- A.清晰度(模糊程度)← 正确答案
- B.遮挡比例← 正确答案
- C.对比度← 正确答案
- D.文件大小
答案:ABC。清晰度用拉普拉斯方差等衡量,遮挡比例计算眼睑/睫毛挡住虹膜的面积占比,对比度用纹理灰度标准差衡量。文件大小与图像质量无关,不作质量指标。
Q5. 眼睑遮挡通常用什么几何模型来拟合?
- A.直线
- B.抛物线← 正确答案
- C.双曲线
- D.正弦波
答案:B。上眼睑的自然轮廓近似抛物线,因此用最小二乘法拟合抛物线方程 y = ax² + bx + c 来标记遮挡区域。直线太简单,双曲线和正弦波不符合眼睑实际形状。
Q6. 关于 Daugman 算子和 Hough 变换检测虹膜边界,下列说法正确的是?
- A.Hough 变换复杂度更低,实时性更好
- B.Daugman 算子直接在灰度图上搜索,速度更快← 正确答案
- C.Daugman 算子必须先做边缘检测
- D.Hough 变换对均匀光照更鲁棒
答案:B。Daugman 算子直接在原始灰度图上计算圆周灰度变化率,不需要先做边缘检测,因此速度更快。Hough 变换需要边缘图且参数空间搜索量大,实时性差;两者对噪声的鲁棒性取决于具体实现,不能简单断言。
Q7. 归一化后的虹膜矩形中,水平方向(角度方向)的平移对应原始图像中的什么变化?
- A.头部旋转← 正确答案
- B.瞳孔缩放
- C.光照变化
- D.图像模糊
答案:A。极坐标展开后,圆周方向变为水平方向,因此原始图像中虹膜的旋转对应矩形中的水平平移。瞳孔缩放对应径向(垂直)方向的变化,光照和模糊与几何变换无关。
Q8. 在虹膜识别工程中,镜片反光会被如何处理?(多选)
- A.作为纹理特征保留
- B.通过灰度阈值标记为异常区域← 正确答案
- C.在比对时用掩码排除← 正确答案
- D.增强反光区域来补充纹理
答案:BC。反光区域是高亮像素,灰度值明显高于周围虹膜纹理,通常用阈值法识别后标记为遮挡,并在特征比对时通过掩码排除,避免干扰特征提取。保留或增强反光会破坏纹理特征。
Q9. 虹膜识别中 FAR 和 FRR 的含义是?
- A.FAR 是把别人认成自己,FRR 是把自己拒之门外← 正确答案
- B.FAR 是把自己拒之门外,FRR 是把别人认成自己
- C.FAR 是识别速度,FRR 是错误率
- D.FAR 是误识率,FRR 是准确率
答案:A。FAR(False Acceptance Rate)误识率,指系统错误接受非授权用户(把别人认成自己);FRR(False Rejection Rate)拒识率,指系统拒绝授权用户(把自己拒之门外)。门禁系统通常要求 FAR 低于 0.001%,FRR 低于 1%。
Q10. 关于虹膜归一化的采样分辨率选择,下列说法合理的有?(多选)
- A.采样行数越多,保留的径向纹理信息越丰富← 正确答案
- B.采样列数越多,对头部旋转的识别精度越高← 正确答案
- C.分辨率越高,存储和计算开销也越大← 正确答案
- D.分辨率不影响匹配性能
答案:ABC。径向采样行数对应虹膜纹理的径向细节,角度采样列数对应圆周方向的细节,越多保留信息也越精确,但存储和计算量同步增长。需权衡精度与性能,所以 D 错误。典型配置如 64×512 就是工程权衡的结果。