การระบาดใหญ่ของโควิด-19 ทั่วโลกได้เร่งความจำเป็นในการตรวจสอบและเตรียมความพร้อมผู้ใช้ออนไลน์ในหลายอุตสาหกรรม เช่น บริการทางการเงิน ประกันภัย และการดูแลสุขภาพ เมื่อพูดถึงประสบการณ์ของผู้ใช้ สิ่งสำคัญคือต้องจัดเตรียมธุรกรรมที่ราบรื่นในขณะที่ยังคงรักษามาตรฐานระดับสูงสำหรับการยืนยันตัวตน คำถามคือ คุณจะตรวจสอบคนจริงในโลกดิจิทัลได้อย่างไร?
ความหมายของ Amazon ให้ความสามารถในการจดจำใบหน้าและการวิเคราะห์ล่วงหน้าสำหรับการยืนยันตัวตนสำหรับแอปพลิเคชันออนไลน์ของคุณ เช่น การธนาคาร สิทธิประโยชน์ อีคอมเมิร์ซ และอื่นๆ อีกมากมาย
ในโพสต์นี้ขอนำเสนอรูปแบบการออกแบบการยืนยันตัวตน “ID + Selfie” และ โค้ดตัวอย่าง คุณสามารถใช้เพื่อสร้างปลายทาง REST สำหรับการยืนยันตัวตนของคุณเอง นี่เป็นรูปแบบการออกแบบทั่วไปที่คุณสามารถรวมเข้ากับโซลูชันที่มีอยู่หรือโซลูชันใหม่ที่ต้องมีการยืนยันตัวตนด้วยใบหน้า ผู้ใช้แสดงรูปแบบการระบุตัวตน เช่น ใบขับขี่หรือหนังสือเดินทาง ผู้ใช้กว่าจะจับภาพเซลฟี่แบบเรียลไทม์ด้วยแอพพลิเคชั่น จากนั้นเราจะเปรียบเทียบใบหน้าจากเอกสารกับเซลฟี่แบบเรียลไทม์ที่ถ่ายบนอุปกรณ์ของพวกเขา
Amazon Rekognition CompareFaces API
หัวใจของรูปแบบการออกแบบ “ID + Selfie” คือการเปรียบเทียบใบหน้าในเซลฟี่กับใบหน้าในเอกสารระบุตัวตน สำหรับสิ่งนี้ เราใช้ Amazon Rekognition CompareFaces
เอพีไอ API เปรียบเทียบใบหน้าในรูปภาพอินพุตต้นทางกับใบหน้าหรือใบหน้าที่ตรวจพบในรูปภาพอินพุตเป้าหมาย ในตัวอย่างต่อไปนี้ เราเปรียบเทียบตัวอย่างใบขับขี่ (ซ้าย) กับเซลฟี่ (ขวา)
แหล่ง | เป้า |
ต่อไปนี้เป็นตัวอย่างของรหัส API:
ค่าหลายค่าถูกส่งกลับใน การตอบสนองของ CompareFaces API. เรามุ่งเน้นไปที่ Similarity
มูลค่าที่ส่งคืนใน FaceMatches
เพื่อตรวจสอบเซลฟีตรงกับ ID ที่ให้มา
ทำความเข้าใจกับพารามิเตอร์การปรับแต่งคีย์
SimilarityThreshold
ถูกตั้งค่าเป็น 80% โดยค่าเริ่มต้น และจะส่งคืนผลลัพธ์ที่มีคะแนนความคล้ายคลึงกันมากกว่าหรือเท่ากับ 80% เท่านั้น ปรับค่าโดยระบุ SimilarityThreshold
พารามิเตอร์.
QualityFilter
เป็นพารามิเตอร์อินพุตเพื่อกรองใบหน้าที่ตรวจพบซึ่งไม่ตรงตามแถบคุณภาพที่กำหนด แถบคุณภาพขึ้นอยู่กับกรณีการใช้งานทั่วไปที่หลากหลาย ใช้ QualityFilter
เพื่อกำหนดแถบคุณภาพโดยระบุ LOW
, MEDIUM
,หรือ HIGH
. หากคุณไม่ต้องการกรองใบหน้าที่มีคุณภาพต่ำ ให้ระบุ NONE
. ค่าเริ่มต้นคือ NONE
.
ภาพรวมโซลูชัน
คุณสามารถสร้าง API “ID + Selfie” สำหรับการยืนยันตัวตนดิจิทัลได้โดยการปรับใช้องค์ประกอบต่อไปนี้:
- REST API ที่มีวิธีการ POST ที่ช่วยให้เราส่งเพย์โหลดเซลฟี่และการระบุตัวตนและส่งคืนการตอบกลับ ในกรณีนี้ คะแนนความคล้ายคลึงกัน
- ฟังก์ชันสำหรับรับเพย์โหลด แปลงรูปภาพให้อยู่ในรูปแบบที่เหมาะสม และเรียกใช้ Amazon Rekognition
compare_faces
API
เราดำเนินการ Amazon API Gateway Amazon สำหรับฟังก์ชัน REST API และ AWS แลมบ์ดา สำหรับฟังก์ชั่น
ไดอะแกรมต่อไปนี้แสดงสถาปัตยกรรมโซลูชันและเวิร์กโฟลว์
เวิร์กโฟลว์ประกอบด้วยขั้นตอนต่อไปนี้:
- ผู้ใช้อัปโหลดเอกสารระบุตัวตนที่จำเป็นและเซลฟี่
- ลูกค้าส่งเอกสารระบุตัวตนและเซลฟี่ไปที่ปลายทาง REST
- จุดสิ้นสุด REST ส่งคืนคะแนนความคล้ายคลึงกันให้กับลูกค้า
- การประเมินจะทำผ่านตรรกะทางธุรกิจในใบสมัครของคุณ ตัวอย่างเช่น หากคะแนนความคล้ายคลึงกันต่ำกว่า 80% จะไม่ผ่านการตรวจสอบตัวตนดิจิทัล มิฉะนั้นจะผ่านการตรวจสอบตัวตนดิจิทัล
- ลูกค้าส่งสถานะไปยังผู้ใช้
รหัสแลมบ์ดา
ฟังก์ชัน Lambda จะแปลงเพย์โหลดขาเข้าจาก base64 เป็นไบต์สำหรับแต่ละอิมเมจ จากนั้นจึงส่งแหล่งที่มา (เซลฟี) และเป้าหมาย (การระบุ) ไปยัง Amazon Rekognition compare_faces
API และส่งคืนคะแนนความคล้ายคลึงที่ได้รับในเนื้อหาของการตอบสนอง API ดูรหัสต่อไปนี้:
วางโครงการ
โปรเจ็กต์นี้มีให้ใช้งานผ่าน ตัวอย่าง AWS กับ ชุดพัฒนา AWS Cloud (AWS CDK). คุณสามารถโคลนที่เก็บและใช้กระบวนการ AWS CDK ต่อไปนี้เพื่อปรับใช้กับบัญชี AWS ของคุณ
- ตั้งค่าผู้ใช้ที่มีสิทธิ์ในการปรับใช้ทรัพยากรโซลูชันทางโปรแกรมผ่าน AWS CDK
- ตั้งค่า อินเทอร์เฟซบรรทัดคำสั่ง AWS AWS (AWS CLI). สำหรับคำแนะนำ โปรดดูที่ การกำหนดค่า AWS CLI.
- หากนี่เป็นครั้งแรกที่คุณใช้ AWS CDK ให้ทำตามข้อกำหนดเบื้องต้นที่ระบุไว้ใน การทำงานกับ AWS CDK ใน Python.
- โคลน พื้นที่เก็บข้อมูล GitHub.
- สร้างสภาพแวดล้อมเสมือน คำสั่งที่คุณใช้ขึ้นอยู่กับระบบปฏิบัติการของคุณ:
- หากใช้ Windows ให้รันคำสั่งต่อไปนี้ในหน้าต่างเทอร์มินัลของคุณจากแหล่งที่มาของที่เก็บโคลน:
- หากใช้ Mac หรือ Linux ให้เรียกใช้คำสั่งต่อไปนี้ในหน้าต่างเทอร์มินัลของคุณจากแหล่งที่มาของที่เก็บโคลน:
- หลังจากเปิดใช้งานสภาพแวดล้อมเสมือน ให้ติดตั้งการพึ่งพามาตรฐานของแอป:
- เมื่อสภาพแวดล้อมได้รับการตั้งค่าและตรงตามข้อกำหนดแล้ว เราสามารถออกคำสั่งการปรับใช้ AWS CDK เพื่อปรับใช้โครงการนี้กับ AWS:
เรียกใช้ API
เราจำเป็นต้องส่งเพย์โหลดในรูปแบบ base64 ไปยังปลายทาง REST เราใช้ไฟล์ Python ในการเรียก API ซึ่งช่วยให้เราสามารถเปิดไฟล์ต้นฉบับและไฟล์เป้าหมาย แปลงเป็น base64 และส่งเพย์โหลดไปยัง API Gateway รหัสนี้มีอยู่ในที่เก็บ
โปรดทราบว่า SOURCE
และ TARGET
ตำแหน่งไฟล์จะอยู่บนระบบไฟล์ในเครื่องของคุณ และ URL คือ URL เกตเวย์ API ที่สร้างขึ้นระหว่างการสร้างโปรเจ็กต์
ทำความสะอาด
เราใช้ AWS CDK เพื่อสร้างโครงการนี้ ดังนั้นเราจึงสามารถเปิดโครงการของเราในเครื่องและออกคำสั่ง AWS CDK ต่อไปนี้เพื่อล้างทรัพยากร:
สรุป
คุณมีแล้ว รูปแบบการออกแบบ “ID + Selfie” พร้อม API ง่าย ๆ ที่คุณสามารถผสานรวมกับแอปพลิเคชันของคุณเพื่อดำเนินการยืนยันตัวตนดิจิทัล ในโพสต์ถัดไปในซีรีส์ของเรา เราจะขยายรูปแบบนี้เพิ่มเติมโดยแยกข้อความออกจากเอกสารระบุตัวตนและค้นหากลุ่มใบหน้าเพื่อป้องกันการซ้ำซ้อน
หากต้องการเรียนรู้เพิ่มเติม โปรดดูที่ คู่มือนักพัฒนา Amazon Rekognition ในการตรวจจับและวิเคราะห์ใบหน้า
เกี่ยวกับผู้เขียน
ไมค์ เอมส์ เป็น Principal Applied AI/ML Solutions Architect กับ AWS เขาช่วยให้บริษัทต่างๆ ใช้บริการแมชชีนเลิร์นนิงและบริการ AI เพื่อต่อสู้กับการฉ้อโกง ขยะ และการละเมิด ในเวลาว่าง คุณสามารถหาเขาปั่นจักรยานเสือภูเขา คิกบ็อกซิ่ง หรือเล่นกีตาร์ในวงดนตรีเมทัลยุค 90
โนอาห์ โดนัลด์สัน เป็นสถาปนิกโซลูชันที่ AWS ซึ่งสนับสนุนองค์กรทางการเงินของรัฐบาลกลาง เขารู้สึกตื่นเต้นกับเทคโนโลยี AI/ML ที่สามารถลดขั้นตอนการทำงานด้วยตนเอง ปรับปรุงประสบการณ์ของลูกค้า และช่วยแก้ปัญหาที่น่าสนใจ นอกงาน เขาสนุกกับการใช้เวลาบนน้ำแข็งกับลูกชายของเขาเล่นฮอกกี้ ล่าสัตว์กับลูกสาวคนโตของเขา และยิงห่วงยางกับลูกสาวคนสุดท้องของเขา
- AI
- ไอ อาร์ต
- เครื่องกำเนิดไออาร์ท
- หุ่นยนต์ไอ
- ความหมายของ Amazon
- ปัญญาประดิษฐ์
- ใบรับรองปัญญาประดิษฐ์
- ปัญญาประดิษฐ์ในการธนาคาร
- หุ่นยนต์ปัญญาประดิษฐ์
- หุ่นยนต์ปัญญาประดิษฐ์
- ซอฟต์แวร์ปัญญาประดิษฐ์
- AWS Machine Learning AWS
- blockchain
- การประชุม blockchain ai
- เหรียญอัจฉริยะ
- ปัญญาประดิษฐ์สนทนา
- การประชุม crypto ai
- ดัล-อี
- การเรียนรู้ลึก ๆ
- รองพื้น (100)
- google ai
- เรียนรู้เครื่อง
- เพลโต
- เพลโตไอ
- เพลโตดาต้าอินเทลลิเจนซ์
- เกมเพลโต
- เพลโตดาต้า
- เพลโตเกม
- ขนาดไอ
- วากยสัมพันธ์
- ลมทะเล