概要
顔照合レポートの警告は、Diditが1:1の顔比較を実行する過程で検出したすべての状態を示します。警告はface_matches[]の各項目にあるwarnings[]配列に格納されます(顔照合レポートを参照)。各エントリにはfeature: "FACEMATCH"と、その警告を発生させたワークフローノードのnode_idも含まれます。
すべての警告は3つの要素で構成されます。
riskコード: コード内で照合に使用できる安定した識別子です。log_type:information、warning、errorのいずれかで、ワークフローの類似度スコアのしきい値から決まります。- 判定への影響: 類似度スコアに対するワークフローのレビューしきい値と却下しきい値によって決まります。
自動却下の条件
次のリスクが発生すると、顔照合レポート(およびセッション)は必ずDeclinedになります。
NO_REFERENCE_IMAGEが発生した場合、LOW_FACE_MATCH_SIMILARITYは抑制されます(スコアリングの対象が存在しないため)。
ただし、例外が1つあります。
本人確認ステップが書類を使わない照会で完了し、その照会先の登録簿が顔写真を返さず顔の確認も行わない場合、顔照合にはライブ撮影画像と比較する対象が仕様上存在しません。
この場合は自動却下ではなく、スコアがnullのFACE_MATCH_NOT_COMPUTEDとして報告され、後述のface_match_not_computed_actionによって判定されます。
設定可能な検証設定
Diditコンソールでは、顔照合の類似度スコアは2つのしきい値によって制御されます(承認/レビュー/却下の切り替えはありません)。
誤った承認が多すぎる場合はレビューしきい値を高く、誤った却下が多すぎる場合は却下しきい値を低く調整してください。
類似度スコアをまったく算出できない場合の処理は、別の設定で制御します。これは、いずれかの画像で顔が検出されなかった場合や、書類を使わない照会によって比較対象の参照画像が存在しない場合です。
このアクションは、
FACE_MATCH_NOT_COMPUTED(書類の顔写真に顔がない場合、または書類を使わない照会の後に参照画像がまったくない場合)と、上限に達したNO_FACE_IN_SELFIE(ユーザーが再試行してもセルフィーに顔が検出されない場合)に適用されます。セルフィーが原因の場合、ユーザーはまず再撮影を求められます(後述)。このアクションは、試行回数の上限に達しても顔を検出できなかった場合にのみ適用されます。
類似度が低いことによる失敗も、ステータスが確定する前に撮影の再試行ループに入ります。ユーザーは合計で最大face_match_max_attempts回(デフォルトは3回、ワークフローノードごとに2〜5回で設定可能)まで再撮影できます。NO_FACE_IN_SELFIEによる失敗も、より鮮明なセルフィーを撮り直すことで解決できる可能性があるため、同じ再試行ループを使用します。FACE_MATCH_NOT_COMPUTEDによる失敗は再試行されません。このステップでは書類の顔写真を撮り直せないためです。試行回数の上限に達したときにのみ最後の試行のステータスが適用され、その記録としてFACE_MATCH_MAX_ATTEMPTS_EXCEEDEDがログに残されます。
単体の顔照合APIには却下しきい値のみが存在します(リクエストオプションface_match_score_decline_threshold、デフォルトは30)。警告が1つでも発生するとリクエストは却下され、顔をまったく比較できなかった場合はNO_REFERENCE_IMAGEが発生します。
生成される警告
例
類似度が境界付近のためレビュー中
顔照合を計算できずレビュー中
参照画像がなく自動却下
再試行を使い切ったため、最後の試行のステータスを適用
スタンドアロンの顔照合APIは、
node_idを除いた同じ形式の警告を返します(比較がワークフローノードに紐付かないため)。警告の種類
各リスクには、アプリケーションの設定に基づいて重大度が割り当てられます。重大度は次の3種類です。関連情報
- 顔照合レポート:レポートの完全なスキーマとステータス。
- ライブネスの警告:セルフィー撮影に関する前段の警告。
- Webhook:ステップが完了するとすぐに、
session.status.updatedには警告が含まれます。 - データモデル:顔照合:正式なスキーマ。
- データモデル:警告オブジェクト:
warnings[]の各エントリーの形式。