제미나이 — 흔히 나노바나나라고 부르는 그 모델 — 로 만든 이미지에는 구석에 작은 반짝이 표식이 찍혀 나옵니다. 그림 속에 그려 넣은 것이 아니라 완성된 그림 위에 덧씌운 것이고, 그래서 지울 수 있습니다. 표식은 뚜껑이고 그 아래의 사진은 여전히 사진이기 때문입니다. 이 페이지는 그 뚜껑이 앉은 자리를 찾아 그 몇천 픽셀을 버리고, 주변 그림으로 그 자리를 다시 만듭니다. 모든 처리는 이 브라우저 안에서 일어나며, 올리신 이미지는 첫 장만이 아니라 전부 처리됩니다.
완성된 그림 위에 덧씌운 표식은 그림 안에 그려 넣은 표식과 다른 문제입니다. 제미나이는 반짝이를 반투명한 층으로 사진 위에 올리므로, 그 아래 픽셀은 한때 진짜 사진이었고 남은 질문은 그것을 어떻게 되찾느냐뿐입니다. 표식의 모양을 정확히 알면 합성을 거꾸로 풀어 원본을 계산으로 복원할 수 있고, 모르면 표식 자리를 구멍으로 보고 주변에서 다시 만들어 넣게 됩니다. 뒤쪽이 덜 정확한 대신 훨씬 튼튼합니다. 어느 버전의 표식이었는지, 어떤 크기로 그려졌는지, 그 뒤에 파일이 다시 인코딩되어 원래의 투명도가 더 이상 맞지 않게 되었는지에 기대지 않기 때문입니다.
더 어려운 절반은 표식을 찾는 일이고, 고정된 좌표로는 되지 않습니다. 모서리에서의 간격은 모델 버전마다 옮겨 다녔고 최근 버전은 화면비마다 다르게 잡습니다. 위치를 가정하는 페이지는 세로로 자른 이미지에서 아무것도 없는 하늘을 자신 있게 고쳐 놓습니다. 표식을 확실하게 가려내는 성질은 밝으면서 동시에 가늘다는 점입니다. 형태학적 톱햇 연산은 작고 밝은 구조만 남기고 크고 밝은 것은 버리므로, 밝기 기준만 두면 똑같이 걸렸을 과노출된 하늘과 찍힌 표식을 갈라 줍니다. 살아남은 후보를 얼마나 밝은지가 아니라 그 모서리의 나머지에 비해 얼마나 튀는지로 판단하는 것도 같은 이유입니다. 옅은 배경 위의 흰 표식은 절대적인 밝기 차가 열 단계 남짓에 불과하지만, 거의 변하지 않는 배경 앞에서는 그것으로도 충분히 분명합니다.
서버가 아니라 페이지 안에서 처리한다는 점이 이 도구의 쓰임을 바꿉니다. 생성한 이미지는 공개할 생각이 없는 초안인 경우가 많습니다. 고객에게 보여 줄 시안, 캐릭터 설정지, 얼굴이 들어간 무언가 같은 것들이요. 업로드를 받는 무료 웹 서비스에는 대부분 읽어 본 적 없는 보관 정책이 붙어 있습니다. 여기서는 파일이 탭을 벗어나지 않고, 그것이 실제 한계도 정합니다. 한 번에 처리할 수 있는 양은 업로드 용량이 아니라 기기의 메모리가 정하며, 이미지를 한 장씩 디코딩하는 것은 큰 이미지 열몇 장을 동시에 여는 것이 브라우저 탭을 강제 종료시키는 가장 빠른 길이기 때문입니다.
눈에 보이는 쪽입니다. 제미나이와 나노바나나가 생성 이미지 구석에 덧씌우는 작은 반짝이 표식이요. 흔히 인용되는 수치는 가로 1024 이하에서 48픽셀 정사각형이 32픽셀 안쪽, 그보다 큰 이미지에서는 대략 그 두 배인데, 여기서 잰 어떤 그림도 그 수치와 맞지 않았습니다. 제미나이 그림 56장을 오른쪽 아래 모서리에 맞춰 평균 내면 나머지는 모두 상쇄되어 사라지고 표식만 또렷하게 남습니다. 그렇게 남은 것은 한 변 42픽셀쯤 되는 네 갈래 별이고, 그 중심은 687x1024 원본에서 양쪽 가장자리로부터 98픽셀 안쪽에 있었습니다. 크기가 다른 두 장은 103픽셀 안쪽이었는데, 이는 같은 값을 그림 크기에 맞춰 늘린 값입니다. 이 페이지는 그렇게 측정한 자리를 봅니다. 모서리에서 밝고 가는 것을 훑어 찾는 방식보다 훨씬 확실했습니다.
지워지지 않고, 지우려 하지도 않습니다. SynthID는 구글이 구석에 찍는 것이 아니라 이미지 전체에 주파수 영역으로 퍼뜨리는 두 번째 비가시 워터마크입니다. 이 페이지는 그것을 전혀 건드리지 않으므로, 여기서 처리한 이미지도 SynthID를 찾는 검출기에는 여전히 AI 생성물로 식별됩니다. 보이는 표식을 지우는 것과 출처 신호를 지우는 것은 다른 일이고, 이 도구가 하는 것은 앞의 하나뿐입니다.
아닙니다. 두 단계 모두 계산입니다. 먼저 같은 이미지 안에서 표식 주변과 가장 비슷한 주변을 가진 조각을 찾습니다. 그래서 벽돌 위의 복원은 그 벽돌로, 하늘 위의 복원은 그 하늘로 만들어집니다. 그다음 구멍을 가로질러 푸아송 방정식을 풉니다. 가져온 조각이 질감을 대고, 구멍에 맞닿은 실제 픽셀이 색을 대므로, 복원된 부분의 가장자리는 맞닿은 픽셀과 정확히 같아집니다. 이음매를 흐리게 다듬을 필요가 없는 이유는 애초에 이음매가 없기 때문입니다. 주변에 충분히 비슷한 조각이 없으면 경계와 이어지는 가장 매끄러운 면으로 대신 채웁니다. 단색 배경에는 정확한 답이고, 복잡한 배경에서는 부드럽게 뭉개집니다.
PNG로 저장하시는 한 픽셀 하나 바뀌지 않습니다. 고치는 작업은 카드에 표시된 영역 안에만 쓰고, PNG는 받은 것을 그대로 저장합니다. JPEG이나 WebP를 고르면 이미지 전체가 다시 인코딩되는데, 어느 한 곳이 크게 상하는 대신 전체가 아주 조금 상하는 쪽입니다. 품질 95에서는 보통 눈에 띄지 않고, 원본이 이미 JPEG이었다면 사진을 PNG로 다시 저장할 때 용량이 몇 배로 불어나므로 JPEG이 맞는 선택입니다.
가능하고, 그것이 "전체 지우기"가 하는 일입니다. 파일 선택 창에서 원하는 만큼 고르거나 한꺼번에 끌어다 놓으면 한 장씩 차례로 감지하고 고치면서 진행 수를 보여 줍니다. 한 번에 한 장씩 처리하는 것은 의도한 설계입니다. 큰 이미지 열몇 장을 동시에 디코딩하는 것은 브라우저 탭이 메모리 부족으로 강제 종료되는 가장 빠른 길입니다. 끝난 뒤 "ZIP 내려받기"를 누르면 완료된 이미지를 하나의 압축 파일로 묶어 줍니다.
근거 없이 찾았다고 우기느니 못 찾았다고 말하는 쪽을 택했기 때문입니다. 감지는 표식의 모형 — 구글의 그림 파일을 복제한 것이 아니라 수식으로 그린 네 갈래 별 — 을 측정된 자리에 대어 보고, 모양이 얼마나 들어맞는지와 그림의 흰 정도를 얼마나 끌어올리는지로 점수를 매깁니다. 이 방식을 무너뜨리는 것은 복잡함이 아니라 대비입니다. 반투명한 흰 반짝이가 밝은 물보라나 거의 흰 하늘 위에 앉으면 맞춰 볼 것이 거의 남지 않고, 측정한 56장 중 두 장이 정확히 그런 경우였습니다. 그래도 측정된 자리는 그대로 고치고 카드에 사실을 표시하므로, "못 찾음"은 거부가 아니라 확대한 정사각형 두 개를 확인하라는 신호입니다. 직접 모서리를 지정하는 것은 다른 생성기에서 온 그림에 필요한 절차입니다.
순서대로 세 가지를 시도해 보세요. 먼저 "여유"를 몇 픽셀 올립니다. 남은 윤곽은 대개 감지된 영역 바로 바깥으로 번진 압축 흔적입니다. 다음으로 표식이 무엇 위에 앉아 있었는지 보세요. 복원이 얼룩처럼 보이는 것은 주로 뚜렷한 경계를 가로지를 때입니다. 문틀이나 수평선 위의 표식이 그 어려운 경우입니다. 그래도 남으면 "가장자리를 잘라내기"로 바꾸세요. 그 방식은 이런 식으로 실패하지 않습니다.
직접 생성한 이미지라면 대체로 괜찮습니다. 다만 어떤 모델로 만들었는지에 따라 약관이 다르고 또 바뀌므로 한 번 확인해 보시는 편이 좋습니다. 괜찮지 않은 쪽은 남의 결과물을 넣는 경우입니다. 스톡 사진의 워터마크나 사진가의 서명, 스튜디오 표식은 소유를 주장하려고 있는 것이고, 그것을 지운다고 소유가 넘어오지는 않습니다. AI 이미지의 비가시 출처 표식을 여기서 건드리지 않는 것도 같은 이유에서 의도한 선택입니다.