구글 이미지에 스크린샷을 넣으면 아무 상관 없는 스톡 사진이 돌아옵니다. 문제는 이미지가 흐릿해서가 아닙니다. 엉뚱한 종류의 검색 엔진에 엉뚱한 종류의 질문을 하고 있어서입니다.
구글 이미지 역검색은 공개 웹을 크롤링해 만든 색인에서 그 사진 전체의 사본이나 거의 같은 사본을 찾습니다. 성인 영상 프레임에서는 두 가지가 이 방식을 무너뜨립니다. 구글은 이런 사이트의 대부분을 크롤링하지 않고, 영상 프레임은 어디에도 게시된 적이 없어서 찾아낼 사본 자체가 없습니다.
구글 이미지 역검색은 실제로 무엇을 대조하나?
이미지 전체를 대조합니다. 구도, 색 배치, 그리고 이미 아는 중복본입니다. 얼굴 인식 시스템이 아니라 근사 중복 탐지기입니다.
이 구분이 이야기의 전부입니다. 침실에 있는 사람의 프레임을 올리면 구글은 그 전체적인 시각적 지문을 공유하는 다른 사진을 찾습니다. "이 얼굴은 누구인가?"를 묻는 게 아닙니다. 애초에 얼굴만 따로 떼어 낼 이유가 없습니다.
사람을 찾을 때 쓸모 있는 비교는 이미지 대 이미지가 아닙니다. 얼굴 대 얼굴입니다. 얼굴을 검출하고, 표준 자세로 정규화하고, 숫자 벡터로 바꾼 다음, 그 벡터를 이미 색인해 둔 모든 얼굴과 비교하는 것입니다.
구글은 왜 이 페이지들을 색인에 갖고 있지 않나?
여러 겹의 필터가 쌓여 있고, 하나하나가 카탈로그의 한 조각씩을 걷어냅니다.
| 장벽 | 이미지 역검색에 주는 영향 |
|---|---|
| 세이프서치 필터 | 색인되어 있어도 결과 화면에서 성인 이미지가 눌립니다 |
robots.txt 차단 |
많은 성인 사이트가 갤러리와 썸네일 경로에서 크롤러를 막습니다 |
| 로그인·연령 장벽 | 그 뒤에 있는 콘텐츠는 크롤러가 아예 가져가지 못합니다 |
| 플레이어가 만든 프레임 | 당신이 캡처한 바로 그 프레임은 파일로 게시된 적이 없습니다 |
사람들이 과소평가하는 것은 마지막 줄입니다. 영상을 멈추고 화면을 캡처하면 웹에 파일로 존재한 적이 한 번도 없는 이미지가 만들어집니다. 세상 어느 크롤러도 그 사본을 갖고 있지 않습니다. 근사 중복 대조에는 대조할 대상이 없습니다.
얼굴만 잘라 내면 왜 더 나빠지나?
잘라 내는 순간 구글이 쓰고 있던 신호가 바로 그만큼 사라지기 때문입니다.
전체 이미지 대조는 배경과 배치와 색 분포에 기댑니다. 얼굴만 남기고 자르면 그 대부분이 지워지고, 픽셀 수준에서 수백만 개의 다른 얼굴과 닮은 작은 영역만 남습니다. 애초에 신원을 보지 않던 시스템에게 이미지를 덜 특징적으로 만들어 준 셈입니다.
이건 좋은 진단법이기도 합니다. 얼굴만 잘라 냈을 때 결과가 나빠지는 도구라면, 그 도구는 얼굴 검색을 하고 있지 않은 것입니다.
실제로 통하는 것: 얼굴 벡터
얼굴 검색은 작업 순서를 뒤집습니다. 사진을 비교하는 대신 얼굴에 대한 수학적 서술을 비교합니다.
- 검출. 얼굴과 그 랜드마크, 즉 눈, 코끝, 입꼬리를 찾습니다
- 정렬. 그 랜드마크로 기울어진 얼굴과 정면 얼굴을 비교 가능한 상태로 맞춥니다
- 인코딩. 정렬된 얼굴을 벡터로 바꿉니다. 저희의 경우 512개 숫자입니다 (ArcFace)
- 비교. 그 벡터를 색인된 모든 얼굴과 코사인 유사도로 비교합니다
3단계에서 자세와 조명과 배경을 버리기 때문에, 몇 년 간격을 두고 서로 다른 방에서 찍은 같은 사람의 사진 두 장이 벡터 공간에서는 여전히 가까이 놓입니다. 전체 이미지 대조는 구조적으로 할 수 없는 일입니다.
색인 또한 알맞은 소재로 만들어져 있어야 합니다. 저희 색인에는 106개 사이트의 성인 영상 표지와 프레임에서 뽑은 얼굴 241,792개가 들어 있습니다(저희 색인, 2026-08 스냅숏). 범용 이미지 색인에는 이런 소재가 아예 없고, 그래서 알고리즘이 아무리 좋아도 범용 도구는 이것을 돌려줄 수 없습니다.
분명히 밝혀 둘 한계: 저희 커버리지는 고르게 퍼져 있지 않습니다. 대표 이미지의 상당 부분이 소수의 출처에서 오기 때문에, 저희가 색인하지 않은 사이트에만 있는 작품은 찾아지지 않습니다. 모든 것을 덮는 얼굴 색인은 없고, 그렇다고 주장하는 도구는 과장하고 있는 것입니다.
어느 정도 비슷해야 "충분히 비슷한" 것인가?
두 얼굴 벡터 사이의 코사인 유사도는 0에서 1 사이의 값을 가집니다. 저희 데이터에서 영상 스틸에 맞춰 보정한 기준값은 0.40입니다. 그 위라면 두 얼굴을 같은 사람으로 봅니다.
결과를 정직하게 읽으려면 이 점이 중요합니다. 밀집 벡터 검색은 정답이 없을 때조차 언제나 무언가를 돌려줍니다. 0.42인 결과와 0.85인 결과는 목록에서 똑같아 보이지만 전혀 다른 이야기를 합니다. 점수를 보여 주지 않고 일치 결과만 보여 주는 도구는 정작 필요한 부분을 숨기고 있는 것입니다.
관련 질문
차이는 직접 시험해 볼 수 있습니다. 같은 스크린샷을 여기와 구글 이미지에 각각 올려 보세요. 검출은 당신의 브라우저에서 돌아가고, 원본 사진은 기기를 떠나지 않으며, 대조에는 잘라 낸 얼굴 영역만 전송됩니다.