이 문서에서는 얼굴 인식에 최적화된 워크스테이션을 구축하기 위한 주요 고려사항에 대해 자세히 다룹니다.
워크스테이션은 일반적인 PC보다 훨씬 더 뛰어난 성능을 자랑하는 컴퓨터로, 비즈니스 또는 전문적인 용도에 맞춰 워크플로를 개선하고 한 번에 여러 기능을 수행하기 위해 설계되었습니다.
기술적인 측면에서 워크스테이션은 최첨단 x86 Intel CPU(Core i 또는 Xeon), AMD CPU 및 NVIDIA GPU 등과 같은 다양한 하드웨어로 구성되어 있고, 일반적으로 Linux 또는 Windows에서 실행됩니다. 얼굴 인식의 경우 이러한 구성은 단일 워크스테이션에서 여러 개의 라이브 비디오 스트림을 실행 및 관리하는 데 매우 효율적입니다.
얼굴 인식 워크스테이션은 산업계 전반에서 활용할 수 있습니다. 일반적으로 얼굴 인식 워크스테이션은 동시에 분석해야 하는 여러 얼굴을 캡처하는 비디오 피드를 여러 개 처리해야 합니다(예: 단일 건물의 모든 IP 카메라가 연결된 보안 시스템). 그리고 종종 워크스테이션은 동시에 다른 애플리케이션도 실행해야 합니다. 얼굴 인식 워크스테이션이 어떻게 작동하는지 몇 가지 예를 살펴보겠습니다.
보안은 공공 또는 개인 건물이든 상관 없이 모든 종류의 건물에서 중요한 문제입니다. 발전소, 대중교통 역사, 상용 및 사무실 건물, 산업용 플랜트, 학교, 쇼핑몰 등을 떠올려 보세요. 이러한 환경에서 보안, 개인의 안전 그리고 자산 보호는 가장 중요한 문제입니다. 얼굴 인식 워크스테이션은 정확히 이러한 용도에 최적의 솔루션입니다. 건물 내 IT 또는 컴퓨터실에 워크스테이션을 마련해 두고 얼굴 인식 기능을 장착하면 시설 전체에 설치된 수 십에서 수 백대의 보안 카메라 또는 스마트 장치에서 발생하는 피드를 모니터링할 수 있습니다.
예를 들어, 스마트 잠금 장치, 감시 카메라 및 셀프 서비스 키오스크 등과 같은 장치가 얼굴 감지를 실행하는 동안 이러한 장치가 연결된 워크스테이션에서 얼굴 인식을 실행할 수 있습니다. 따라서 이러한 씬 디바이스보다 훨씬 더 강력한 워크스테이션에서 실제로 인식을 실행하는 데 필요한 컴퓨팅 역량을 크게 줄여줍니다.
또한 얼굴 인식은 클라우드 또는 데이터 센터에 상주하면서 모바일 또는 웹 애플리케이션을 위한 서비스를 제공하는 서버에도 배포할 수 있습니다. 이러한 사용 사례에서는 이미지 또는 비디오를 캡처하는 수 천 또는 수백만 대의 최종 사용자 장치가 있고, 캡처된 이미지 또는 비디오는 얼굴 인식 및 인증을 위해 워크스테이션으로 다시 전달됩니다.
예를 들어, 모바일 뱅킹 앱을 이용 중인 사용자를 떠올려 볼까요. 사용자가 앱을 열면 얼굴을 ID로 사용하여 로그인하라는 메시지가 표시됩니다. 장치에서는 얼굴 벡터를 캡처하고 해당 정보를 작은 파일로 암호화한 다음 얼굴 인식을 위해 서버로 보낸 후 사용자가 실제 계정 소유자가 맞는지 확인합니다. 확인되면 사용자는 해당 앱에 액세스하도록 허용되고 모바일 예금 등과 같이 원하는 작업을 수행할 수 있습니다.
또 다른 예로는 웹 애플리케이션에 구축된 자동차 렌트, 자전거 또는 스쿠터 대여 서비스가 있습니다. 자동차 렌트를 원하는 사용자가 서비스 웹사이트를 방문하여 원하는 항목을 선택하면 운전면허 번호 등 모든 정보를 직접 입력하지 않아도 웹 카메라가 실제 얼굴 벡터 데이터를 캡처하여 암호화한 다음 서버로 전송하여 해당 사용자가 등록된 회원인지 여부와 운전면허증 세부 정보를 인증할 수 있습니다. 확인되면 해당 사용자는 예약을 완료할 수 있습니다. 전체 렌트 과정이 불과 몇 초 내에 완료될 수 있습니다.
널리 사용되는 워크스테이션 인프라 설정에는 온-프레미스 또는 클라우드, 이렇게 두 가지가 있습니다. 아래에서는 각 설정에 대해 고려해야 할 요소에 대해 자세히 살펴봅니다.
건물 보안 및 감시에 사용되는 워크스테이션은 구내에 설치하는 것이 가장 좋습니다. 그래야 인트라넷(내부 네트워크)을 통해 워크스테이션을 장치에 직접 연결할 수 있습니다. 이러한 환경에서는 단일 건물, 플랜트 또는 캠퍼스 전체에서 얼굴 인식을 수행하는 수 십 대에서 수 천 대에 이르는 카메라가 있으며, 모드 워크스테이션과 다시 통신합니다. 인트라넷은 모든 이미지 및 비디오 피드가 조직의 방화벽 내에서 제어 및 저장되도록 하여 보안을 보장합니다.
보안 이외에도 인트라넷 네트워크는 워크스테이션 성능을 위한 이점도 제공합니다. 약 2~8mbps의 대역폭을 차지하는 1080p 비디오 스트림을 실행하는 감시 카메라가 많습니다. 고속 인트라넷은 이처럼 높은 대역폭 요구 사항을 충족할 수 있습니다.
최적의 상태로 설계되면 온-프레미스 워크스테이션은 많은 양의 데이터를 실시간으로 디코딩할 수 있습니다. 이는 고려해야 할 가장 중요한 요소 중 하나입니다. 감시 카메라는 전송을 위해 비디오 스트림을 H.264(AVC) 또는 H.265(HEVC) 코덱으로 인코딩합니다. 그런 다음 AI 비전 알고리즘이 압축된 비디오 스트림을 원시 비디오 버퍼로 디코딩합니다. 워크스테이션에 GPU를 추가하면 워크스테이션에서는 이러한 모든 데이터를 실시간으로 디코딩할 수 있습니다. 다수의 GPU가 40개가 넘는 비디오 스트림을 동시에 디코딩할 수 있습니다. 특히 NVIDIA의 GPU는 디코딩된 비디오 버퍼를 바탕으로 실행하도록 AI 알고리즘을 가속화하여 견줄 데 없이 뛰어난 런타임 성능과 컴퓨팅 용량을 제공합니다.
온-프레미스 설정의 대안으로, 워크스테이션을 클라우드 또는 데이터 센터에 설치할 수도 있습니다. 클라우드는 퍼블릭 클라우드, 프라이빗 클라우드 또는 둘이 조합된 하이브리드 클라우드입니다. 클라우드 설치는 타사 공급자가 호스팅하지만 온-프레미스는 내부에서 호스팅됩니다. 때문에 클라우드의 워크스테이션은 최종 사용자가 수행할 작업이 크게 줄어듭니다. 또한 비즈니스를 쉽게 확장 또는 축소할 수 있도록 지원합니다. 그러나 클라우드 설치의 경우 보안 위험이 온-프레미스 설치보다 더 클 수 있습니다. 데이터 센터에서 공간을 임대하되 자체 서버 또는 워크스테이션을 설정하면 위험이 줄어듭니다. 또한 공유 머신에서 가상 처리를 임대하는 경우 타사에서 데이터를 관리하기 때문에 노출 위험이 크게 높아질 수 있습니다.
휴대폰과 같은 장치를 사용하여 얼굴 인식을 위한 이미지 또는 비디오를 전송하는 경우에는 클라우드에 서버를 배포하는 것이 일반적입니다.
가장 널리 사용되는 두 가지 구성은 워크스테이션급 또는 서버급입니다. 아래에서는 각 구성에 대해 자세히 설명합니다.
수 십~수 백대의 감시 카메라를 모니터링해야 대부분의 온-프레미스 설치의 경우 워크스테이션급 구성이 안성맞춤입니다.
워크스테이션: Intel Core i, Xeon CPU 또는 AMD 서버 클래스 CPU, NVIDIA Quadro GPU 탑재
다음은 여러 감시 카메라 채널 및 피드에 맞춰 얼굴 인식 및 기타 AI 비전 알고리즘을 수행하도록 잘 갖춰진 구성의 예입니다. Supermicro™는 널리 사용되는 이러한 구성과 일치하는 워크스테이션을 만듭니다. 이러한 구성에는 일반적으로 단일 프레임워크에 GPU 카드가 최대 4개까지 포함되어 있어, FaceMe®와 같이 완벽하게 최적화된 얼굴 인식 알고리즘을 사용하는 경우 수백 개의 비디오 채널을 처리할 수 있습니다.
최적의 성능을 발휘하려면 Quadro RTX 6000/8000 또는 새로 출시된 NVIDIA RTX A6000 등과 같이 Quadro GPU 시리즈를 사용하는 것이 좋습니다. 예산이 빠듯한 경우에는 Quadro RTX 5000이 경제적으로 보다 합리적인 솔루션입니다. 그러나 이 제품은 더 높은 수준의 모델에 비해 처리할 수 있는 트래픽 또는 비디오 채널이 적습니다. Quadro RTX 6000과 Quadro RTX 8000은 얼굴 인식 성능이 유사합니다. VH 모델에서 FaceMe®에 대한 테스트를 진행했을 때 둘 다 340fps를 제공했습니다. Quadro RTX 5000은 220fps를 지원합니다. 모든 GPU를 압도하는 가장 성능이 뛰어난 GPU는 RTX A6000으로, 410fps를 제공합니다.
그 외에 적용 가능한 옵션에는 GeForce 시리즈 GPU가 있습니다(예: RTX 3090). 저렴한 가격에 비해 뛰어난 성능을 자랑하지만 연중무휴 24시간 사용하기에 적합하지 않고 보증 기간이 1년에 불과합니다. 이러한 이유 때문에 Quadro 시리즈를 선택하는 것이 더 낫습니다. 모든 Quadro 시리즈 GPU 카드 프레임워크는 잘 설계되어 있습니다. 팬이 달려 있어 철저한 온도 및 습도 관리가 필요 없습니다. 또한 스마트 오피스에서부터 공장 및 상용 건물에 이르기 까지 거의 모든 시설에 쉽고 유연하게 배포할 수 있습니다.
워크스테이션을 데이터 센서 또는 클라우드에 설치하고 수 백대에서부터 수 백만 대에 이르는 장치의 얼굴 인식 요청을 처리하려는 경우에는 서버급 구성이 필요합니다.
서버: CPU 및 팬리스(Fan-Less)(자연 공조) GPU
서버급 구성은 데이터 센터 및 서버실에 적합하기 때문에 온도 및 습도를 관리해야 합니다. 일반적으로 GPU에는 과중한 워크로드 시에도 뛰어난 성능을 유지할 수 있도록 열을 배출할 수 있는 팬이 있습니다. 그러나 Tesla V100 또는 T4와 같은 자연 공조 카드는 완전한 팬리스 제품입니다. 대신 이러한 제품에는 히트 싱크가 내장되어 있습니다. 때문에 GPU가 열적 한계 내에서 작동하도록 히트 싱크를 통해 적절한 공기 흐름을 제공하는 시스템에서 사용해야 합니다. 자연 공조 방식의 팬리스 GPU는 서버 및 데이터 센터 환경에 안성맞춤입니다.
iEi HTB-200-C236 또는 Advantech MIC-770 시스템을 사용하는 것이 좋습니다. 둘 다 잘 설계되어 뛰어난 공기 흐름을 제공하고 NVIDIA T4 히트 싱크에 적합합니다. 온도가 관리되어 GPU가 최대 워크로드에서 작동 중인 경우에도 열적 한계를 벗어나지 않습니다. 적합한 서버에 대한 자세한 내용은 NVIDIA의 적합한 서버 카탈로그를 참조하십시오.
최적의 상태로 얼굴 인식을 실행하는 데 필요한 서버 및 GPU 수는 피크 시간에 필요한 초당 트랜잭션 수에 따라 달라집니다. 매일 활발하게 사용하는 사용자 수를 포함한 사용자층과 사용 빈도를 고려해야 합니다. CyberLink에서는 FaceMe® VH 모델을 테스트하여 GPU 온도가 잘 관리되는 상태에서 T4가 192fps의 얼굴 인식을 지원할 수 있음을 확인했습니다.
서버의 컴퓨팅 역량을 확보하기 위해 워크로드를 서버에서 에지로 이전하는 것이 좋습니다. 예를 들어, 얼굴 감지는 에지에서, 얼굴 인식은 서버에서 실행할 수 있습니다. 이와 같이 구분하면 서버의 역량을 확보하여 얼굴이 포함된 이미지 프레임만 처리하면 됩니다. 또한 얼굴 감지, 얼굴 템플릿 추출 및 스푸핑 방지를 에지에서 수행할 수 있는데, 이러한 작업은 최첨단 스마트폰(예: Snapdragon을 사용하는 Android 휴대폰)에서 완벽하게 처리할 수 있습니다. 따라서 서버는 중/저가형 스마트폰(예: 기존 iPhone)을 위해 얼굴 추출만 처리하면 됩니다.
전반적으로, 어떤 구성이 가장 적합한지 서버 구성을 고려할 때 서버와 에지 배포 둘 다를 지원하는 얼굴 인식 알고리즘을 선호할 것입니다.
얼굴 인식에 대해 상세히 다룬 에지에서의 얼굴 인식 - 상세 가이드 2022에서 설명한 것처럼 GPU(또는 VPU)가 탑재된 고성능 워크스테이션 또는 PC에서 실행되는 뛰어난 얼굴 인식 시스템을 설계하는 일은 까다로울 수 있습니다. 시스템 버스를 통해 CPU, GPU와 메모리 간에 수십 개의 동시 비디오 스트림이 실행됩니다. 따라서 시스템 아키텍처에서 적절하게 구현되지 않으면 가장 강력한 얼굴 인식 알고리즘이라도 느려집니다. 때문에 시스템 아키텍처는 CPU, GPU와 메모리 간 데이터 흐름을 항상 최소화해야 합니다.
FaceMe®는 최고의 성능을 제공하기 위해 수 차례 반복을 통해 시스템 아키텍처를 최적화했습니다. 예를 들어, 단일 스테이션에서 NVIDIA RTX A6000을 사용하는 FaceMe®는 340~410fps를 처리할 수 있습니다(정확한 프레임 수는 사용하는 FaceMe® 얼굴 인식 모델에 따라 달라질 수 있음). 이는 GPU당 25~41개의 동시 비디오 채널(각 채널마다 10fps)을 처리하는 것에 해당하며, 가격 대비 성능이 매우 뛰어난 것입니다. 다음 표에는 CyberLink의 최신 모델에서 테스트한 널리 사용되는 GPU 몇 개의 얼굴 인식 성능이 나와 있습니다.
* 1080p 이미지로 테스트를 진행했으며, 각 이미지에는 얼굴이 한 개씩 포함되어 있습니다.
서버 및 워크스테이션에 가장 일반적으로 사용되는 OS 두 가지는 Windows와 Linux입니다. 두 운영 체제에는 가장 적합한 운영 체제를 결정하기 전에 고려해야 할 장단점이 있습니다. 가장 먼저 고려해야 할 점은 어떤 애플리케이션 즉, SDK를 사용할 계획인지 입니다. FaceMe®와 같이 뛰어난 얼굴 인식 알고리즘은 Linux와 Windows를 둘 다 지원하여 각각 동일한 기능 및 성능을 제공합니다. 따라서 훨씬 더 유연하게 플랫폼을 계획 및 관리할 수 있습니다. 그럼, 각 운영 체제에 대해 좀 더 자세히 살펴보겠습니다.
Linux는 서버급 구성에 가장 일반적으로 사용됩니다. 라이선스 비용이 들지 않기 때문에 선호도가 높습니다. 오픈 소스인데다 신뢰할 수 있고 안정적이며, 연중무휴 24시간 작동이 가능합니다. 뿐만 아니라 제어 및 관리도 아주 쉽습니다. CyberLink에서 적극적으로 추천하는 운영 체제입니다.
Linux 변형 중 Ubuntu가 가장 널리 사용되며, 그 뒤를 Debian과 Red Hat이 바짝 따라오고 있습니다. Ubuntu는 가장 널리 사용되는 컨테이너 배포 및 관리 플랫폼인 Docker를 쉽게 설정할 수 있기 때문에 인기가 좋습니다.
Windows는 압도적으로 널리 사용되는 데스크톱 OS입니다. 많은 IT 팀이 Linux보다 Windows에 훨씬 더 익숙합니다. 비즈니스에 적합하다면 Windows를 실행하는 서버를 선택하는 것이 좋습니다. 또한 시스템에서 Exchange, Microsoft SQL 또는 Active Directory 등과 같은 다른 Microsoft 애플리케이션을 실행해야 하는 경우에도 OS를 일정하게 유지하는 것이 현명한 선택입니다. 그로 인해 서버에서 모든 애플리케이션 구성요소를 훨씬 더 쉽게 작성, 개발 및 유지할 수 있기 때문입니다.
얼굴 인식에 대한 구체적인 필요에 가장 잘 맞는 워크스테이션을 구축하는 경우 여러 가지를 고려해야 합니다. 옵션을 평가할 때 가장 중요한 점은 사용 사례 및 성능 요구 사항을 파악하고 워크스테이션의 위치(온-프레미스 또는 클라우드)를 결정하는 것입니다.
사용 사례에 맞는 빌드 및 설계를 결정했다고 생각하면 실제로 사용하기 위해 애플리케이션을 설치하기 전에 POC(개념 증명) 프로젝트를 수행하는 것이 좋습니다. 그러면 완전히 실행하기 전에 필요한 개선 사항을 파악하고 적절하게 조정할 수 있습니다.
얼굴 인식, 얼굴 인식의 작동 방식 및 구현 방법에 대한 안내는 '에지 기반 얼굴 인식 - 최종 가이드'를 참조하십시오.
2022년에 안면 인식이 어떻게 사용되는지에 대해서는 다음 기사 '안면 인식 –얼굴 인식 – 2022년에는 어떻게 사용됩니까?'를 참조하세요