QR코드가 조금 찢어지거나 얼룩이 생겼는데도 휴대전화가 읽는 이유는 일부 정보가 손상돼도 원래 내용을 복원할 수 있도록 오류 정정 정보가 함께 들어 있기 때문입니다.
다만 아무 부분이나 많이 잘라도 괜찮다는 뜻은 아닙니다. 손상된 면적뿐 아니라 위치 표시용 네모, 바깥 여백, 손상된 위치에 따라 인식 여부가 크게 달라질 수 있습니다.
QR코드는 왜 찢어져도 읽힐까?
가장 큰 이유는 QR코드에 오류 정정 기능이 들어 있기 때문입니다. 중요한 내용을 한 번만 저장하는 것이 아니라, 일부 데이터가 없어졌을 때 원래 내용을 계산해 되찾을 수 있는 추가 정보를 함께 저장합니다.
그래서 택배 송장이나 영수증의 QR코드가 조금 긁히거나 얼룩졌더라도 남아 있는 정보가 충분하면 휴대전화가 정상적으로 읽을 수 있습니다. QR코드 판독기가 예전 내용을 기억하는 것이 아니라 현재 보이는 코드 안의 정보만 이용해 복원하는 것입니다.
오류 정정률은 얼마나 될까?
QR코드에는 L, M, Q, H라는 네 가지 오류 정정 수준이 있습니다. 수준이 높을수록 손상에 더 강하지만 복구 정보를 더 많이 넣어야 하므로 같은 크기의 QR코드에 저장할 수 있는 실제 데이터 양은 줄어듭니다.
| 오류 정정 수준 | 대략적인 복구 능력 | 특징 |
|---|---|---|
| L | 약 7% | 복구 정보가 가장 적고 많은 데이터를 저장하기 유리 |
| M | 약 15% | 일반적인 용도에서 자주 사용되는 수준 |
| Q | 약 25% | 얼룩이나 일부 가림에 상대적으로 강함 |
| H | 약 30% | 복구 능력이 가장 높아 로고가 들어간 QR 등에 활용되기도 함 |
어디가 손상되느냐가 더 중요하다
QR코드를 자세히 보면 세 모서리에 큰 네모가 있습니다. 이것은 단순한 디자인이 아니라 카메라가 QR코드의 위치와 방향을 찾는 데 사용하는 위치 검출 패턴입니다.
따라서 가운데 데이터 영역이 조금 긁힌 QR코드는 오류 정정으로 복원될 수 있지만, 세 모서리의 큰 네모가 심하게 훼손되면 카메라가 코드 자체의 위치와 방향을 제대로 잡지 못해 인식률이 크게 떨어질 수 있습니다.
오류 정정 범위 안이라면 정상적으로 읽힐 가능성이 있습니다.
QR코드의 위치와 방향을 찾기 어려워져 인식률이 크게 떨어질 수 있습니다.
카메라가 코드와 주변 배경을 구분하기 어려워질 수 있습니다.
오류 정정 범위 안이고 중요한 구조를 가리지 않는다면 정상 인식될 수 있습니다.
없어진 정보는 어떻게 복구할까?
휴대전화가 찢어진 부분을 눈으로 추측해서 임의로 채우는 것은 아닙니다. QR코드에는 원래 데이터와 함께 복구에 필요한 값을 계산해 넣어두며, 판독 과정에서는 이를 이용해 일부 사라진 정보를 다시 계산합니다.
여기에 사용되는 대표적인 방식이 리드-솔로몬(Reed-Solomon) 오류 정정입니다. 이름은 어렵지만, 원래 숫자들과 함께 이를 검증할 수 있는 추가 값을 저장해뒀다가 일부 값이 사라졌을 때 남은 정보로 빈 부분을 되찾는 방식이라고 이해하면 됩니다.
QR코드가 반으로 찢어졌다면?
절반이 완전히 사라졌다면 오류 정정 범위를 넘어설 가능성이 높아 인식이 어렵습니다. 하지만 두 조각이 모두 남아 있다면 버리기 전에 원래 모양대로 최대한 정확하게 맞춰볼 가치가 있습니다.
찢어진 경계의 검은 칸이 이어지도록 맞추고 종이를 평평하게 편 뒤 촬영해 보세요. 투명테이프를 사용할 경우에는 빛이 반사돼 코드 일부가 하얗게 보일 수 있으므로 휴대전화 각도를 조금 바꿔주는 것이 좋습니다.
검은 칸의 줄과 모서리가 자연스럽게 이어지도록 맞춥니다.
심하게 접혀 있으면 카메라가 패턴을 제대로 읽기 어렵습니다.
테이프나 코팅지의 빛 반사가 있다면 휴대전화 각도를 바꿉니다.
너무 가까이 대지 말고 코드 전체가 화면에 들어오도록 합니다.
주변의 흰 여백도 중요하다
QR코드 바깥에는 일정한 빈 공간이 필요합니다. 이를 보통 콰이어트 존(Quiet Zone)이라고 부르며 카메라가 QR코드와 주변의 글씨나 그림을 구분하는 데 도움을 줍니다.
QR코드 자체는 멀쩡해도 주변을 글씨와 그림으로 너무 빽빽하게 채우거나 코드 가장자리까지 잘라내면 인식률이 떨어질 수 있습니다. 직접 QR코드를 만들어 인쇄한다면 코드 주변에 충분한 여백을 남기는 편이 안전합니다.
QR코드가 안 읽힐 때 해볼 것
QR코드가 인식되지 않는다고 해서 항상 코드 자체가 손상된 것은 아닙니다. 빛 반사나 초점, 촬영 거리처럼 카메라 환경 때문에 읽히지 않는 경우도 많습니다.
크기·색 대비·주변 여백까지 함께 확인하는 것이 가장 확실합니다.
Q1. QR코드가 반으로 찢어져도 읽을 수 있나요?
Q2. QR코드의 일부를 가려도 읽히는 이유는 무엇인가요?
Q3. 오류 정정 30%면 QR코드 30%를 잘라도 되나요?
Q4. 가운데에 로고가 있는데도 왜 QR코드가 읽히나요?
Q5. QR코드를 검은색이 아닌 다른 색으로 만들어도 되나요?
Q6. QR코드를 작게 인쇄해도 괜찮나요?
Q7. 멀쩡한 QR코드가 안 읽히는 이유는 무엇인가요?
마무리
QR코드가 조금 찢어져도 읽히는 핵심 이유는 오류 정정 정보를 이용해 일부 사라진 데이터를 다시 계산할 수 있기 때문입니다. 그래서 작은 긁힘이나 얼룩은 생각보다 잘 견딜 수 있습니다.
하지만 QR코드는 무조건 손상에 강한 것은 아닙니다. 세 모서리의 위치 표시 패턴과 주변 여백이 크게 훼손되거나 손상이 오류 정정 범위를 넘으면 인식하지 못할 수 있습니다. 실제 QR코드가 찢어졌다면 조각을 원래 위치대로 맞추고, 평평하게 편 뒤 반사광을 줄여 전체가 보이도록 촬영하는 것이 가장 먼저 해볼 수 있는 방법입니다.