یکی از فناوری های مورد استفاده برای نظارت و کنترل تردد افراد، نرم افزار تشخیص چهره است. تشخیص و شناسایی چهره یکی از مسائل مهم در دنیای فناوری امروز است که در حیطه ی فناوری های پردازش تصویر قرار می گیرد. شناسایی چهره ی افراد به دلیل تفاوت هایی که در چهره ی آن ها وجود دارد دارای پیچیدگی هایی است.فناوری تشخیص چهره (face detection) و فناوری شناسایی چهره (face recognition) دو فناوری مورد استفاده در نرم افزار تشخیص چهره هستند. شناسایی چهره، چهره ی افراد را در تصاویر و فیلم های ویدئویی و یا در تصاویر بلادرنگ شناسایی کرده و تشخیص چهره هویت فرد مورد نظر را مشخص می کند.
الگوریتم ها و روش های متعددی جهت تشخیص و شناسایی چهره ی افراد در سامانه ی تشخیص چهره وجود دارد. هر کدام از این الگوریتم ها راهکار خود را برای شناسایی چهره ی افراد دارند. اما در کنار تفاوت در هر الگوریتم به طور کلی می توان مراحل زیر را برای آن در نظر گرفت:
شناسایی چهره: چهره یا چهره ها در تصویر شناسایی می شوند و معمولا با استفاده از یک کادر مشخص می شود که چهره ی انسان در تصویر وجود دارد.
استخراج ویژگی های چهره: ویژگی های چهره که می تواند فاصله ی چشم ها، فرم بینی، گوش، لب، چانه و اطلاعات دیگر باشد به صورت داده های دیجیتال استخراج می شوند تا از طریق همین ویژگی ها ها هویت افراد مشخص گردد.
تشخیص چهره: با تطبیق ویژگی های چهره با چهره های ذخیره شده در پایگاه داده، فرد موجود در تصویر شناسایی می شود و هویت فرد توسط سامانه تشخیص چهره مشخص می گردد.