스마트폰 진동 기능으로 화상회의 딥페이크 감지한다.
SFake라는 제목의 이 새로운 접근 방식은 대부분 시스템에서 사용하는 수동적인 방법을 버리고 사용자의 휴대전화를 진동시키고(스마트폰에서 일반적으로 사용되는 동일한 '진동' 메커니즘 사용) 얼굴을 미묘하게 흐리게 처리한다.
라이브 딥페이킹 시스템은 모션 블러를 다양하게 복제할 수 있지만, 흐릿한 영상이 훈련 데이터나 적어도 사전 훈련 데이터에 포함되어 있는 한 이런 종류의 예상치 못한 블러에 충분히 신속하게 대응할 수 없고, 흐릿하지 않은 얼굴 부분을 계속 출력하여 딥페이크 컨퍼런스 콜의 존재를 드러낸다.
DeepFaceLive는 카메라 진동으로 인한 흐림을 시뮬레이션하기에 충분히 빠르게 대응할 수 없다. 출처: https://arxiv.org/pdf/2409.10889v1
연구자들이 자체적으로 큐레이팅한 데이터 세트(활성 카메라 흔들림을 특징으로 하는 데이터 세트가 존재하지 않기 때문에)에 대한 테스트 결과, SFake는 비디오 회의에서 다른 사람이 정적 전화 마운트를 사용하는 대신 손으로 카메라를 잡고 있을 때 발생하는 자연스러운 손 움직임과 같은 어려운 상황에 직면했을 때에도 경쟁 비디오 기반 딥페이크 감지 방법보다 성능이 우수했다.
비디오 기반 딥페이크 감지에 대한 증가하는 수요
최근 비디오 기반 딥페이크 감지에 대한 연구가 증가했다. 수년간의 성공적인 음성 기반 딥페이크 강도 사건 이후, 올해 초 한 재무 직원이 딥페이크 비디오 회의 통화에서 CFO를 사칭한 사기꾼에게 2,500만 달러를 이체하도록 속았다.
이러한 특성의 시스템은 높은 수준의 하드웨어 액세스가 필요하지만 많은 스마트폰 사용자는 이미 금융 및 기타 유형의 확인 서비스에서 얼굴 기반 인증을 위해 얼굴 특징을 기록하도록 요청하는 데 익숙해져 있다(실제로 이는 LinkedIn의 확인 프로세스의 일부이기도 하다).
따라서 이러한 유형의 범죄가 계속해서 헤드라인을 장식함에 따라 이러한 방법이 화상 회의 시스템에 점점 더 많이 적용될 가능성이 높아 보인다.
실시간 화상 회의 딥페이크를 해결하는 대부분의 솔루션은 통신자가 고정된 웹캠을 사용하고 움직임이나 과도한 환경 또는 조명 변화가 예상되지 않는 매우 정적인 시나리오를 가정한다. 스마트폰 통화는 그러한 '고정된' 상황을 제공하지 않는다.
대신 SFake는 핸드헬드 스마트폰 기반 화상 회의에서 많은 수의 시각적 변형을 보완하기 위해 여러 가지 감지 방법을 사용하며 스마트폰에 내장된 표준 진동 장비를 사용하여 이 문제를 해결하는 최초의 연구 프로젝트인 것으로 보인다.
이 논문의 제목은 가짜 흔들기: 액티브 프로브를 통해 실시간으로 딥페이크 영상 감지(Shaking the Fake: Detecting Deepfake Videos in Real Time via Active Probes)이며 싱가포르 난양 기술 대학의 두 연구원이 작성했다.
방법
SFake는 클라우드 기반 서비스로 설계되었으며, 로컬 앱은 처리할 원격 API 서비스로 데이터를 보내고 결과를 다시 보낸다.
그러나 450mb의 공간과 최적화된 방법론 덕분에 네트워크 연결로 인해 전송된 이미지가 과도하게 압축되어 진단 프로세스에 영향을 미칠 수 있는 경우 장치 자체에서 딥페이크 감지를 완전히 처리할 수 있다.
이런 방식으로 '모두 로컬'로 실행한다는 것은 시스템이 화상 회의와 관련된 코덱 간섭 없이 사용자의 카메라 피드에 직접 액세스할 수 있다는 것을 의미한다.
평균 분석 시간은 4초 분량의 비디오 샘플이 필요한데, 이 시간 동안 사용자는 움직이지 않도록 요청받고, SFake는 '프로브'를 보내 카메라 진동을 발생시킨다. 이는 DeepFaceLive와 같은 시스템이 시간 내에 응답할 수 없는 선택적으로 무작위 간격으로 발생한다.
(트레이닝 데이터 세트에 흐릿한 콘텐츠를 포함하지 않은 공격자는 훨씬 더 유리한 상황에서도 흐릿함을 생성할 수 있는 모델을 생성할 가능성이 낮고 DeepFaceLive는 큐레이션이 부족한 데이터 세트에서 트레이닝된 모델에 이 기능을 그냥 '추가'할 수 없다는 점을 다시 강조해야 한다.)
시스템은 눈과 눈썹을 제외한 얼굴의 선택된 영역을 잠재적인 딥페이크 콘텐츠 영역으로 선택한다(해당 영역에서 깜빡임과 다른 얼굴 움직임은 흐릿함 감지 범위를 벗어나고 이상적인 지표가 아니기 때문이다).
SFake의 개념적 스키마.
위의 개념적 스키마에서 볼 수 있듯이 적절하고 예측할 수 없는 진동 패턴을 선택하고, 최상의 초점 거리를 정하고, 얼굴 인식(표준 68개 얼굴 랜드마크를 추정하는 Dlib 구성 요소를 통한 랜드마크 감지 포함)을 수행한 후, SFake는 입력 얼굴에서 기울기를 도출하고 이러한 기울기의 선택된 영역에 집중한다.
분산 시퀀스는 연구 중인 짧은 클립의 각 프레임을 순차적으로 분석하여 평균 또는 '이상적인' 시퀀스에 도달할 때까지 얻고 나머지는 무시한다.
이를 통해 훈련된 데이터베이스(잠시 후)를 기반으로 딥페이크 콘텐츠의 확률에 대한 양화자로 사용할 수 있는 추출된 특징이 제공된다.
이 시스템은 1920×1080픽셀의 이미지 해상도와 렌즈에 대한 최소 2배 줌 요구 사항이 필요하다. 이 논문에서는 이러한 해상도(그리고 더 높은 해상도)가 Microsoft Teams, Skype, Zoom 및 Tencent Meeting에서 지원된다고 언급한다.
대부분의 스마트폰에는 전면 및 자체 카메라가 있으며, 종종 이 중 하나만 SFake에 필요한 줌 기능을 갖추고 있다. 따라서 앱에서는 통신자가 이러한 요구 사항을 충족하는 두 카메라 중 하나를 사용해야 한다.
여기서의 목표는 시스템이 분석할 비디오 스트림에 사용자 얼굴의 정확한 비율을 입력하는 것이다. 이 논문에서는 여성이 모바일 기기를 사용하는 평균 거리가 34.7cm이고 남성의 경우 38.2cm(Journal of Optometry에 보고됨)이며 SFake는 이러한 거리에서 매우 잘 작동한다고 관찰한다.
안정화는 핸드헬드 비디오의 문제이고 손 움직임으로 인해 발생하는 흐림은 SFake의 작동을 방해하기 때문에 연구자들은 여러 가지 방법을 시도하여 이를 보상했다. 이 중 가장 성공적인 방법은 추정 랜드마크의 중심점을 계산하여 이를 '앵커'로 사용하는 것이었다. 사실상 알고리즘 안정화 기술이다. 이 방법을 통해 92%의 정확도를 얻었다.
데이터 및 테스트
이 목적에 적합한 데이터 세트가 없었기 때문에 연구자들은 자체 데이터 세트를 개발했다:
‘[우리는] 8개의 다른 브랜드의 스마트폰을 사용하여 다양한 성별과 연령대의 참가자 15명을 기록하여 자체 데이터 세트를 구축했다. 스마트폰을 참가자로부터 20cm 떨어진 휴대전화 홀더에 놓고 두 번 확대하여 참가자의 얼굴을 조준하여 얼굴의 모든 특징을 포함하면서 스마트폰을 다른 패턴으로 진동시킨다.
‘전면 카메라가 확대할 수 없는 휴대전화의 경우 후면 카메라를 대체 카메라로 사용한다. 각각 20초 길이의 150개의 긴 비디오를 녹화한다. 기본적으로 감지 기간은 4초라고 가정한다. 시작 시간을 무작위로 지정하여 긴 비디오 하나에서 4초 길이의 클립 10개를 트리밍한다. 따라서 각각 4초 길이의 총 1500개의 실제 클립을 얻는다.'
DeepFaceLive(GitHub 링크)가 연구의 중심 대상이었지만, 현재 가장 널리 사용되는 오픈소스 라이브 딥페이크 시스템이기 때문에 연구자들은 기본 감지 모델을 훈련하기 위해 다른 네 가지 방법을 포함했다. Hififace, FS-GANV2, RemakerAI, MobileFaceSwap이다. 이 중 마지막 방법은 대상 환경을 고려할 때 특히 적절한 선택이었다.
1,500개의 가짜 비디오가 훈련에 사용되었으며, 실제 비디오와 변경되지 않은 비디오도 같은 수로 사용되었다.
SFake는 SBI, FaceAF, CnnDetect, LRNet, DefakeHop 변형, 무료 온라인 딥페이크 감지 서비스인 Deepaware를 포함한 여러 분류기를 대상으로 테스트되었다. 이러한 딥페이크 방법 각각에 대해 1,500개의 가짜 비디오와 1,500개의 실제 비디오가 훈련되었다.
기본 테스트 분류기의 경우 ReLU 활성화 함수가 있는 간단한 2계층 신경망이 사용되었다. 1000개의 실제 비디오와 1000개의 가짜 비디오가 무작위로 선택되었다(가짜 비디오는 전적으로 DeepFaceLive 사례였다).
수신자 조작 특성 곡선 아래의 면적(AUC/AUROC)과 정확도(ACC)가 메트릭으로 사용되었다.
훈련과 추론을 위해 NVIDIA RTX 3060이 사용되었고 테스트는 Ubuntu에서 실행되었다. 테스트 비디오는 Xiaomi Redmi 10x, Xiaomi Redmi K50, OPPO Find x6, Huawei Nova9, Xiaomi 14 Ultra, Honor 20, Google Pixel 6a, Huawei P60으로 녹화되었다.
기존 감지 방법에 따라 PyTorch에서 테스트를 구현했다. 주요 테스트 결과는 아래 표에 나와 있다.
경쟁 방법에 대한 SFake의 결과이다.
저자는 다음과 같이 논평한다:
‘모든 경우에서 SFake의 탐지 정확도는 95%를 넘었다. Hififace를 제외한 5가지 딥페이크 알고리즘 중에서 SFake는 다른 6가지 탐지 방법보다 다른 딥페이크 알고리즘에 대해 더 나은 성능을 보였다. 우리 분류기는 DeepFaceLive에서 생성한 가짜 이미지를 사용하여 훈련되었기 때문에 DeepFaceLive를 탐지할 때 98.8%의 가장 높은 정확도에 도달한다.
‘RemakerAI에서 생성한 가짜 얼굴을 마주할 때 다른 탐지 방법은 성능이 좋지 않다. 이는 인터넷에서 다운로드할 때 비디오가 자동으로 압축되어 이미지 세부 정보가 손실되어 탐지 정확도가 떨어지기 때문일 수 있다고 추측한다. 그러나 이는 RemakerAI에 대한 탐지에서 96.8%의 정확도를 달성하는 SFake의 탐지에는 영향을 미치지 않는다.’
저자는 SFake가 캡처 렌즈에 2배 줌을 적용한 시나리오에서 가장 성능이 좋은 시스템이라고 추가로 언급한다. 이는 움직임을 과장하고 엄청나게 어려운 전망이기 때문이다. 이 상황에서도 SFake는 2.5와 3배율에서 각각 84%와 83%의 인식 정확도를 달성할 수 있었다.
결론
실시간 딥페이크 시스템의 약점을 스스로에게 사용하는 프로젝트는 딥페이크 감지가 주파수 분석(딥페이크 분야의 혁신에 면역이 전혀 없음)을 중심으로 한 오래된 접근 방식을 자극한 논문에 의해 지배되어 온 해에 상쾌한 제안이다.
2022년 말에 또 다른 시스템이 모니터 밝기 분산을 감지기 후크로 사용했다. 같은 해에 내가 직접 DeepFaceLive가 하드 90도 프로필 뷰를 처리할 수 없다는 것을 보여줬고, 커뮤니티의 관심을 얻었다.
DeepFaceLive는 비디오 회의 사기와 관련하여 범죄적 관심의 초점이 될 가능성이 거의 확실하기 때문에 이러한 프로젝트에 적합한 대상이다.
그러나 최근에 VFX 커뮤니티에서 현재 매우 인기 있는 LivePortrait 시스템이 DeepFaceLive보다 프로필 뷰를 훨씬 더 잘 처리한다는 일화적 증거를 보았다. 이 연구에 포함될 수 있었다면 흥미로웠을 것이다.