QR Code Reader vTool#
QR Code Reader는 Image 입력 핀을 통해 수신한 이미지에서 QR 코드를 감지하고 디코딩할 수 있습니다. 결과는 Regions 및 Texts 출력 핀을 통해 출력됩니다.
영역 출력에는 QR 코드가 발견된 영역이 포함됩니다. 텍스트 출력은 QR 코드로 인코딩된 텍스트 문자열입니다.
ROI Creator vTool을 사용하여 감지 전에 관심 영역을 지정하면, QR Code Reader는 Roi 입력 핀을 통해 ROI 데이터를 수신합니다. 이를 통해 QR Code Reader가 QR 코드를 검색하는 이미지 영역이 줄어들므로 잘못된 후보를 제거하는 데 도움이 됩니다. 부수적인 효과로 처리 속도가 빨라지고 안정성이 높아집니다.
QR Code Reader vTool은 단일 라이선스(Basic 또는 PRO)로 구매하거나 Code Reader Bundle 라이선스의 일부로 구매할 수 있습니다. 라이선스를 구매하려면 Basler 웹사이트를 방문하십시오.

QR Code Reader 버전#
QR Code Reader는 세 가지 버전으로 제공됩니다. 다음 표는 각 버전 간의 차이점을 보여줍니다. 표 제목에서 버전을 클릭하면 이 항목의 관련 섹션으로 바로 이동할 수 있습니다.
| Starter | Basic | Pro | |
|---|---|---|---|
| 감지할 수 있는 QR 코드 개수는 몇 개입니까? | 3 | 3 | 무제한 |
| GS1 및 Micro QR 코드를 감지할 수 있습니까? | 아니요 | 예 | 예 |
| 검색에 대한 타임아웃(timeout)을 지정할 수 있습니까? | 아니요 | 예 | 예 |
| 어떤 모듈 크기(module sizes)가 허용됩니까? | 2~80픽셀 사이의 변 길이 | 6~20픽셀 사이의 변 길이 | 1~100픽셀 사이의 변 길이 |
| 모듈 사이의 간격(gaps)이 허용됩니까? | 예, 작은 간격 | 예, 작은 간격 | 예, 큰 간격 |
| 보여야 하는 파인더 패턴(finder patterns)은 몇 개입니까? (QR 코드에만 적용되며, Micro QR 코드는 제외됩니다.) | 모두 세 개 | 모두 세 개 | 2 |
| 어두운 배경 위의 밝은(light-on-dark) QR 코드를 검출할 수 있습니까? | 아니요 전처리가 필요합니다. | 아니요 전처리가 필요합니다. | 예 |
| 대칭/반전된(mirrored) QR 코드를 검출할 수 있습니까? | 예 | 예 | 예 |
| 이미지의 대비(contrast)와 관련하여 제한 사항이 있습니까? | 어두운 부분과 밝은 이미지 부분 간의 충분한 대비가 필요합니다. | 어두운 부분과 밝은 이미지 부분 간의 충분한 대비가 필요합니다. | 이미지의 밝은 부분과 어두운 부분의 차이는 최소 10 그레이 값 이상이어야 합니다. |
| 향상된(Enhanced) 검출 모드를 사용할 수 있습니까? | 아니요 | 아니요 | 예 |
| 최대(Maximum) 검출 모드를 사용할 수 있습니까? | 아니요 | 아니요 | 예 |
| Roi 입력 핀에 유효한 데이터 형식 | RectangleF | RectangleF, RectangleF Array, Region, Region Array | RectangleF, RectangleF Array, Region, Region Array |
| 라이선스 구매 | pylon Software Suite에 포함됨 | Basler 웹사이트 방문 | Basler 웹사이트 방문 |
작동 방식#
정보
QR Code Reader Starter vTool은 GS1 또는 Micro QR 코드 검출을 지원하지 않습니다.
QR Code Reader의 버전에 따라 이미지에서 최대 3개 또는 무제한의 QR 코드를 검출할 수 있습니다.
Basic 및 PRO 버전에서는 일정 시간 경과 후 감지를 종료하도록 타임아웃을 지정할 수 있습니다. 이미지에 QR 코드가 하나만 포함되어 있다는 것을 알고 있는 경우, QR Code Reader가 하나의 코드만 찾도록 설정하면 처리 시간을 절약할 수 있습니다.
일반적인 사용 사례#
- 읽기 QR 코드: 이 경우 디코딩된 문자열을 출력하려면 Texts 출력 핀만 연결하면 됩니다.
- QR 코드의 위치 확인: 후속 처리를 위해 Regions 출력 핀에서 반환된 QR 코드의 위치와 크기를 사용합니다.
QR Code Reader Starter#
이미지에서 최대 3개의 QR 코드를 감지할 수 있습니다. 이미지에서 예상되는 코드 수로 개수를 제한하면 처리 시간을 절약할 수 있습니다. GS1 또는 Micro QR 코드는 감지가 지원되지 않습니다. 이를 위해서는 vTool의 Basic 또는 PRO 버전이 필요합니다.
감지 기준#
QR 코드가 감지되고 디코딩되려면 다음 기준을 충족해야 합니다.
- 코드 구조: QR Code Reader Starter는 표준 범위인 1~40개의 심벌을 지원하며, 이는 21 x 21에서 177 x 177 모듈에 해당합니다.
- 모듈 크기: 코드 내 개별 모듈의 변 길이는 2~80픽셀 사이여야 합니다.
- 모듈 간 간격: 모듈 간의 작은 간격은 허용됩니다.
- 파인더 패턴 수: QR 코드는 3개의 파인더 패턴을 포함합니다. 코드를 읽으려면 3개 모두 표시되어야 합니다.
- 극성: QR 코드는 어두운 배경 위의 밝은 패턴 또는 밝은 배경 위의 어두운 패턴이어야 합니다. 밝은 배경 위의 어두운 패턴의 경우, 예를 들어 Gray Value Transformer vTool을 사용하여 입력 이미지를 반전하는 전처리 단계를 실행하세요.
- 미러링: 수직, 수평 또는 양방향으로 미러링된 QR 코드를 감지할 수 있습니다.
- 대비: 어두운 이미지 부분과 밝은 이미지 부분 사이에 충분한 대비가 필요합니다.
- 가독성: 코드는 반사나 얼룩 등의 시각적 결함이 없어야 하며, 충분한 해상도와 대비를 갖추어야 합니다.
vTool 구성#
QR Code Reader Starter vTool을 구성하려면:

- vTool Settings 영역의 Recipe Management 창에서 Open Settings를 클릭하거나 vTool을 더블 클릭합니다.
QR Code Reader Starter 대화상자가 열립니다. - Number of QR Codes 영역에서 감지할 QR 코드 개수를 선택합니다.
핀 데이터 뷰에서 QR Code Reader Starter의 결과를 확인할 수 있습니다. 여기에서 표시할 출력을 선택할 수 있습니다.
QR Code Reader Basic#
이미지에서 최대 3개의 QR 코드를 감지할 수 있습니다. 이미지에서 예상되는 코드 수로 개수를 제한하면 처리 시간을 절약할 수 있습니다.
감지 기준#
QR 코드가 감지되고 디코딩되려면 다음 기준을 충족해야 합니다.
- 코드 구조: QR Code Reader Basic은 표준 범위인 1~40개의 심벌을 지원하며, 이는 21 x 21에서 177 x 177 모듈에 해당합니다.
- 모듈 크기: 코드 내 개별 모듈의 변 길이는 2~100픽셀 사이여야 합니다.
- 모듈 간 간격: 모듈 간의 작은 간격은 허용됩니다.
- 파인더 패턴 수: QR 코드는 3개의 파인더 패턴을 포함합니다. 코드를 읽으려면 3개 모두 표시되어야 합니다.
- 극성: QR 코드는 어두운 배경 위의 밝은 패턴 또는 밝은 배경 위의 어두운 패턴이어야 합니다. 밝은 배경 위의 어두운 패턴의 경우, 예를 들어 Gray Value Transformer vTool을 사용하여 입력 이미지를 반전하는 전처리 단계를 실행하세요.
- 미러링: 수직, 수평 또는 양방향으로 미러링된 QR 코드를 감지할 수 있습니다.
- 대비: 어두운 이미지 부분과 밝은 이미지 부분 사이에 충분한 대비가 필요합니다.
- 가독성: 코드는 반사나 얼룩 등의 시각적 결함이 없어야 하며, 충분한 해상도와 대비를 갖추어야 합니다.
데이터 코드 유형#
Data Code Type 드롭다운 목록을 사용하여 찾으려는 데이터 코드 타입을 선택할 수 있습니다.
- QR Codes
- GS1 QR Codes
- Micro QR Codes
QR 코드와 GS1 QR 코드의 심볼 구조는 동일하지만 코딩 방식은 다릅니다.
표준 QR 코드를 디코딩할 때 QR Code Reader Basic은 원본 문자열을 출력합니다. GS1 QR 코드를 선택하면 QR Code Reader Basic은 GS1 표준을 준수하는 형식으로 문자열을 디코딩합니다.
Timeout#
시간이 촉박한 애플리케이션의 경우 타임아웃을 지정할 수 있습니다. 타임아웃은 처리 시간이 가변적이거나 예측할 수 없는 경우(예: 이미지에 QR 코드가 포함되지 않은 경우) 유용합니다. 지정된 타임아웃을 초과하면 감지 프로세스가 중단되고 다음 이미지로 넘어갑니다.
Basler에서는 타임아웃을 원하는 제한 시간보다 약간 낮게 설정할 것을 권장합니다. vTool이 감지 프로세스를 즉시 중단하지 않기 때문입니다. 따라서 타임아웃을 원하는 제한 시간의 70~80%로 설정하십시오.
vTool 구성#
QR Code Reader Basic vTool을 구성하려면:

- vTool Settings 영역의 Recipe Management 창에서 Open Settings를 클릭하거나 해당 vTool을 두 번 클릭합니다.
QR Code Reader Basic 대화상자가 열립니다. - Data Code Type 드롭다운 목록에서 원하는 data code type을 선택합니다.
- Number of QR Codes 영역에서 감지할 QR 코드 개수를 선택합니다.
- Timeout 영역에서 일정 시간이 경과한 후 감지를 종료할지 여부를 지정합니다. 타임아웃을 지정하려면 No timeout 체크 박스를 해제하고 입력 필드에 원하는 타임아웃을 입력합니다.
pin data view에서 QR Code Reader Basic의 결과를 확인할 수 있습니다. 여기에서 표시할 출력을 선택할 수 있습니다.
QR Code Reader PRO#
이미지에서 무제한 개수의 QR 코드를 감지할 수 있습니다. 개수를 이미지 내 예상 코드 수로 제한하면 처리 시간을 절약할 수 있습니다.
감지 기준#
QR 코드가 감지되고 디코딩되려면 다음 기준을 충족해야 합니다.
- Code structure: QR Code Reader Pro는 1개에서 40개의 심볼로 구성된 표준 범위를 지원하며, 이는 21x21에서 최대 177x177 모듈에 해당합니다.
- Module size: Enhanced detection mode에서는 개별 모듈의 변 길이가 2~100픽셀 사이여야 합니다. Maximum detection mode에서는 개별 모듈의 변 길이가 1~100픽셀 사이여야 합니다.
- Gaps between modules: 모듈 사이의 간격이 넓어도 허용됩니다.
- Number of finder patterns: QR 코드는 3개의 파인더 패턴을 포함합니다. 코드를 읽으려면 2개가 보여야 합니다.
- Polarity: QR 코드는 밝은 배경에 어두운 패턴, 어두운 배경에 밝은 패턴 또는 이 둘의 혼합일 수 있습니다.
- 미러링: 수직, 수평 또는 양방향으로 미러링된 QR 코드를 감지할 수 있습니다.
- Contrast: 이미지의 밝은 부분과 어두운 부분의 차이가 최소 10 그레이 값 이상이어야 합니다.
- 가독성: 반사나 번짐과 같은 시각적 결함이 있거나 해상도나 명암비가 낮은 코드를 감지할 수 있습니다.
데이터 코드 유형#
Data Code Type 드롭다운 목록을 사용하여 찾으려는 데이터 코드 타입을 선택할 수 있습니다.
- QR Codes
- GS1 QR Codes
- Micro QR Codes
QR 코드와 GS1 QR 코드의 심볼 구조는 동일하지만 코딩 방식은 다릅니다.
표준 QR 코드를 디코딩할 때 QR Code Reader Pro는 원본 문자열을 출력합니다. GS1 QR 코드를 선택하면 QR Code Reader Pro는 GS1 표준을 준수하는 형식으로 문자열을 디코딩합니다.
감지 모드#
Standard: 빠른 감지 모드이지만 변형되었거나 저해상도의 데이터 코드는 감지되지 않습니다.
Enhanced: 이 감지 모드에서 QR Code Reader Pro는 QR 코드의 Quality에 대해 더 관대합니다. 즉, 모든 감지 기준을 충족하지 않는 코드도 감지할 수 있습니다. 이 옵션을 활성화하면 감지 프로세스가 느려집니다.
Maximum: 이 감지 모드에서는 Enhanced 감지 모드의 장점 외에도 더 작은 모듈 크기를 허용하며 더 작은 모듈 감지 시 더욱 견고합니다. 즉, 모든 감지 기준을 충족하지 않는 더 많은 코드를 감지할 수 있습니다. 이 옵션을 활성화하면 감지 프로세스가 느려집니다.
Timeout#
시간이 촉박한 애플리케이션의 경우 타임아웃을 지정할 수 있습니다. 타임아웃은 처리 시간이 가변적이거나 예측할 수 없는 경우(예: 이미지에 QR 코드가 포함되지 않은 경우) 유용합니다. 지정된 타임아웃을 초과하면 감지 프로세스가 중단되고 다음 이미지로 넘어갑니다.
Basler에서는 타임아웃을 원하는 제한 시간보다 약간 낮게 설정할 것을 권장합니다. vTool이 감지 프로세스를 즉시 중단하지 않기 때문입니다. 따라서 타임아웃을 원하는 제한 시간의 70~80%로 설정하십시오.
vTool 구성#
QR Code Reader Pro vTool을 구성하려면:

- vTool Settings 영역의 Recipe Management 창에서 Open Settings를 클릭하거나 해당 vTool을 두 번 클릭합니다.
QR Code Reader Pro 대화상자가 열립니다. - Data Code Type 드롭다운 목록에서 원하는 data code type을(를) 선택합니다.
- Number of QR Codes 영역에서 감지할 QR 코드의 개수를 선택합니다. 감지할 코드의 최대 개수를 알 수 없는 경우 Unlimited를 선택합니다.
- Detection Mode 영역에서 원하는 감지 모드를 선택합니다.
- Polarity 드롭다운 목록에서 애플리케이션에 적합한 옵션을 선택합니다.
애플리케이션의 코드에 특정 극성이 있는 경우 그에 따라 설정을 선택합니다. 이미지 내 코드의 극성을 알 수 없거나 극성이 서로 다른 여러 개의 코드가 나타나는 경우 Any를 선택합니다. - Timeout 영역에서 일정 시간이 경과한 후 감지를 종료할지 여부를 지정합니다. 타임아웃을 지정하려면 No timeout 체크 박스를 해제하고 입력 필드에 원하는 타임아웃을 입력합니다.
QR Code Reader Pro의 결과는 pin data view에서 확인할 수 있습니다. 여기에서 표시할 출력을 선택할 수 있습니다.
Inputs#
Image#
Camera vTool 또는 이미지를 출력하는 vTool(예: Image Format Converter vTool)로부터 직접 이미지를 수신합니다.
- Data type: Image
- 이미지 형식: 8비트 모노 또는 컬러 이미지. 컬러 이미지는 내부적으로 모노 이미지로 변환됩니다.
Roi#
ROI Creator vTool 또는 영역이나 사각형을 출력하는 다른 vTool에서 관심 영역을 수신합니다. 여러 개의 사각형이나 영역은 내부적으로 병합되어 하나의 관심 영역을 형성합니다. Starter 버전은 RectangleF만 지원합니다.
- 데이터 유형: RectangleF, RectangleF Array, Region, Region Array
Outputs#
Texts#
QR 코드에 인코딩된 텍스트 문자열을 반환합니다.
- 데이터 유형: String Array
Regions#
발견된 각 QR 코드에 대한 영역을 반환합니다. 영역은 직사각형 형태입니다. 시각화 용도 또는 후속 피처 추출에 사용할 수 있습니다.
- Data type: Region Array
OrientedBoxes_px#
발견된 각 QR 코드에 대한 방향성 경계 상자(oriented bounding box)를 반환합니다.
- Data type: RectangleF Array
관련 vTools#
일반적인 선행 vTool#
일반적인 후행 vTool#
- Region Feature Extraction vTool
발견된 QR 코드의 중심, 크기, 방향을 확인할 수 있습니다.