📱
← 가이드 목록으로

QR 코드 작동 방식: 기술 심층 분석

· 태그: qr-codes, technology, encoding, data-storage, barcode

QR 코드 작동 방식: 기술 심층 분석

QR 코드(Quick Response 코드)는 1994년 Toyota의 자회사인 Denso Wave가 발명한 2차원 매트릭스 바코드입니다. 고속 디코딩을 위해 설계된 QR 코드는 네 가지 표준화된 인코딩 모드와 Reed-Solomon 오류 수정을 사용하여 검은색과 흰색 사각형(모듈)의 격자에 데이터를 저장합니다. 데이터를 1차원으로 인코딩하는 선형 바코드와 달리, QR 코드는 정보를 수평 및 수직으로 모두 압축하여 단일 심볼에 최대 7,089개의 숫자 문자를 저장할 수 있습니다.

QR 코드의 구조

모든 QR 코드는 여러 기능 영역으로 구성됩니다. 이러한 구성 요소를 이해하면 안정적으로 스캔되고 데이터 용량을 최대화하는 코드를 디자인하는 데 도움이 됩니다.

파인더 패턴

왼쪽 위, 오른쪽 위, 왼쪽 아래 모서리에 위치한 세 개의 동일한 사각형 패턴입니다. 각 파인더 패턴은 7x7 검은색 사각형, 5x5 흰색 사각형, 그리고 중앙의 3x3 검은색 사각형으로 구성됩니다. 이 패턴을 통해 스캔 소프트웨어는 회전에 관계없이 QR 코드의 위치, 방향, 각도를 빠르게 감지할 수 있습니다.

정렬 패턴

코드 전체에 삽입된 더 작은 등록 마크(일반적으로 5x5 모듈)입니다. 정렬 패턴은 코드가 제품 포장이나 음료 캔과 같은 곡면에 인쇄될 때 스캐너가 왜곡을 보정하는 데 도움이 됩니다. 버전 2 이상의 코드에는 최소 하나의 정렬 패턴이 있으며, 코드 크기가 증가함에 따라 개수도 늘어납니다.

타이밍 패턴

파인더 패턴 사이를 수평 및 수직으로 가로지르는 번갈아 나타나는 검은색과 흰색 선입니다. 이 모듈은 데이터 그리드의 행과 열 위치를 정의하여 스캐너가 각 모듈의 크기를 결정하는 데 도움이 됩니다.

형식 정보

파인더 패턴 근처의 전용 영역으로, 오류 수정 레벨과 마스크 패턴을 인코딩합니다. 스캐너는 이를 먼저 읽어 나머지 데이터를 올바르게 디코딩하는 방법을 파악합니다.

데이터 및 오류 수정 영역

나머지 모듈은 두 개의 인터리브된 영역, 즉 데이터 코드워드(인코딩된 페이로드)와 오류 수정 코드워드(손상 복구용 중복 데이터)를 형성합니다. 이들은 QR 코드 버전에 따라 달라지는 특정 비트 패턴으로 배치됩니다.

조용한 영역

전체 QR 코드를 둘러싼 최소 4개 모듈 너비의 필수적인 명확한 테두리입니다. 이 조용한 영역이 없으면 스캐너가 코드를 주변 환경과 안정적으로 구분할 수 없습니다. 이는 커스텀 디자인에서 스캔 실패의 가장 일반적인 원인 중 하나입니다.

데이터 인코딩 방법

QR 코드는 각각 다른 유형의 데이터에 최적화된 네 가지 고유한 인코딩 모드를 지원합니다. 인코더는 입력에 따라 가장 효율적인 모드를 자동으로 선택합니다.

숫자 모드

0부터 9까지의 숫자에만 최적화되었습니다. 가장 공간 효율적인 모드로, 세 자리 숫자를 10비트로 압축합니다(표준 바이너리의 바이트당 8비트 대비). 버전 40-L에서의 최대 용량: 7,089자. 전화번호, 제품 ID, 숫자 코드에 이상적입니다.

영숫자 모드

숫자(0-9), 대문자(A-Z) 및 9개의 특수 문자(공백, $, %, *, +, -, ., /, :)를 인코딩합니다. 각 문자 쌍은 11비트로 압축됩니다. 최대 용량: 4,296자. 소문자를 피하는 URL 및 짧은 텍스트 코드에 가장 적합합니다.

바이트 모드

ISO-8859-1(Latin-1) 인코딩을 사용하여 모든 8비트 문자를 인코딩합니다. 콘텐츠에 소문자, 대소문자 혼합 또는 UTF-8 문자가 포함된 경우 인코더는 바이트 모드로 전환됩니다. 최대 용량: 2,953자. 가장 유연한 모드로, 전체 URL 및 혼합 텍스트와 같은 대부분의 일반적인 사용 사례를 다룹니다.

한자 모드

더블바이트 일본어 문자(Shift JIS 인코딩)를 위한 특수 모드입니다. 각 한자 문자는 16비트가 아닌 13비트로 압축됩니다. 최대 용량: 1,817자. 일본 외 지역에서는 덜 일반적으로 사용되지만 형식의 유산을 보여줍니다.

인코딩 프로세스 단계별

  1. 데이터 분석 — 인코더가 입력 콘텐츠를 분석하고 가장 효율적인 모드를 선택합니다
  2. 모드 표시기 — 4비트 코드가 선택된 인코딩 모드를 알립니다
  3. 문자 수 — 비트 시퀀스가 데이터의 길이를 기록합니다
  4. 데이터 인코딩 — 콘텐츠가 선택된 모드를 사용하여 비트 스트림으로 변환됩니다
  5. 종결자 — 짧은 패딩 시퀀스가 데이터의 끝을 표시합니다
  6. 비트 패딩 — 전체 코드워드 경계에 도달하기 위해 나머지 용량이 번갈아 나타나는 0과 1 비트로 채워집니다
  7. 오류 수정 생성 — Reed-Solomon 코드워드가 계산되어 추가됩니다

QR 코드 버전 및 크기

QR 코드는 버전 1(21x21 모듈)부터 버전 40(177x177 모듈)까지 40개 버전으로 정의됩니다. 각 연속 버전은 각 변에 4개 모듈을 추가합니다.

| 버전 | 크기 | 숫자 용량 (L) | 일반적인 용도 | |---------|-----------|---------------------|-------------| | 1 | 21x21 | 41 | 간단한 URL | | 2 | 25x25 | 77 | 짧은 링크 | | 4 | 33x33 | 187 | vCard, URL | | 6 | 41x33 | 322 | WiFi 설정 | | 10 | 57x57 | 652 | 중간 텍스트 | | 20 | 97x97 | 1,746 | 문서 | | 40 | 177x177 | 7,089 | 최대 데이터 |

대부분의 소비자 대상 QR 코드는 버전 2에서 버전 10까지 사용합니다. 더 높은 버전은 더 작은 모듈을 포함하므로 더 높은 해상도의 인쇄와 더 정밀한 스캔이 필요합니다.

Reed-Solomon 오류 수정

QR 코드는 Reed-Solomon 오류 수정을 사용하여 데이터를 블록으로 나누고 각 블록에 대한 중복 코드워드를 생성합니다. 네 가지 레벨이 있습니다:

  • 레벨 L — 손상된 데이터의 7% 복구. 최대 데이터 용량, 최소 보호.
  • 레벨 M — 15% 복구. 일반 사용을 위한 표준 선택. 대부분의 QR 생성기가 이 레벨을 기본값으로 사용합니다.
  • 레벨 Q — 25% 복구. 포장된 상품이나 자주 취급되는 품목의 코드를 위한 강력한 보호.
  • 레벨 H — 30% 복구. 실외 또는 산업 환경을 위한 최대 보호.

오류 수정 시스템은 또한 QR 코드에 로고와 아트워크를 삽입하는 인기 있는 관행을 가능하게 합니다. 가려진 모듈은 방해가 오류 수정 용량을 초과하지 않는 한 중복 데이터에서 재구성됩니다.

스캔 작동 방식

최신 QR 코드 스캔은 밀리초 내에 실행되는 정교한 파이프라인을 포함합니다:

  1. 감지 — 카메라가 이미지를 캡처하고, 소프트웨어가 파인더 패턴을 찾아 코드의 경계를 결정합니다
  2. 원근 보정 — 스캐너가 각도 있는 시점과 곡면을 보정하기 위해 기하학적 변환을 적용합니다
  3. 이진화 — 다양한 조명을 처리하기 위해 적응형 임계값 처리를 사용하여 이미지가 순수한 흑백으로 변환됩니다
  4. 모듈 샘플링 — 스캐너가 그리드 교차점에서 각 모듈의 색상을 읽습니다
  5. 형식 디코딩 — 오류 수정 레벨과 마스크 패턴이 형식 영역에서 추출됩니다
  6. 데이터 추출 — 마스킹이 해제되고 데이터 비트 스트림이 지정된 순서로 읽힙니다
  7. 오류 검사 — Reed-Solomon 신드롬 계산이 오류를 감지하고 수정합니다
  8. 디코딩 — 정리된 비트 스트림이 선언된 인코딩 모드를 사용하여 원본 콘텐츠로 다시 변환됩니다

마스킹 패턴

QR 코드는 최종 렌더링 전에 데이터 영역에 8가지 마스킹 패턴(0부터 7까지 번호 지정) 중 하나를 적용합니다. 마스킹은 검은색과 흰색 모듈의 균형 잡힌 분포를 보장하여 스캐너를 혼란스럽게 할 수 있는 큰 빈 영역을 방지합니다. 스캐너는 형식 정보에서 마스크 참조를 읽고 디코딩 중에 마스크를 되돌립니다.

마이크로 QR 코드

마이크로 QR 코드라는 변형은 (3개 대신) 단일 파인더 패턴을 사용하며 4개의 더 작은 버전으로 제공됩니다. 마이크로 QR 코드는 전자 부품 및 의료 기기와 같은 매우 작은 공간에 유용하며, 최대 355개의 숫자 문자 용량을 가집니다.

자신 있게 QR 코드 생성하기

기본 기술을 이해하면 어떤 환경에서도 안정적으로 스캔되는 QR 코드를 만드는 데 도움이 됩니다. 저희 무료 온라인 QR 코드 생성기는 버전 선택, 모드 최적화, 오류 수정, 마스킹 등 모든 기술적 결정을 자동화하여 몇 초 만에 프로덕션 준비가 완료된 코드를 얻을 수 있습니다. URL, 텍스트, vCard, WiFi 등 다양한 형식과 전체 사용자 지정 옵션 중에서 선택하세요.