バーコード関数
- 更新日2026-02-23
- 3分で読める
Visionは現在、Code 25、Code 39、Code 93、Code 128、EAN 8、EAN 13、Codabar、MSI、UPC A、Pharmacode、GS1 DataBar Limited(旧RSS-14 Limited)のバーコード形式をサポートしています。
バーコードの認識処理は、2つの段階から構成されます。
- バーコードによって埋められた領域の局所化を簡素化する、画像内の関心領域をユーザが指定する学習段階。
- バーコードをデコードするためにユーザによって指定された領域を解析する間の認識段階。
バーコードアルゴリズムの制限
以下の要素は、デコード処理中のエラーの原因となる場合があります。
- 非常に低い画像解像度
- 非常に高い水平または垂直方向の光ドリフト
- 画像内のバー上のコントラスト
- 高いレベルのノイズ
制限事項は、バーとスペース(空白)の幅が2種類のCode 39、Codabar、Code 25、MSI、Pharmacodeなどのバーコードと、バーとスペース(空白)の幅が2種類以上あるCode 93、Code 128、EAN 13、EAN 8、UPC A、GS1 DataBar Limited(旧RSS-14 Limited)などのバーコードで異なります。
画像の解像度は最小のバーとスペース(空白)の幅によって決定します。これらの幅は、すべてのバーコードで最低3ピクセルである必要があります。
光ドリフトは、バーコードの背景の左(または上)の線と右(または下)の線のグレーレベルの平均値の差異によって量子化されます。バーとスペース(空白)の幅が2種類のバーコードで光ドリフトが120を超える場合、またバーとスペース(空白)の幅が4種類のバーコードで光ドリフトが100を超える場合、デコードが不正確となる可能性があります。
露出過度の画像では、バーコードの広い幅のバーと狭い幅のバーのグレーレベルは異なる傾向があります。バーとスペース(空白)の幅が2種類のバーコードでグレーレベルの差異が80未満の場合、またバーとスペース(空白)の幅が4種類のバーコードでグレーレベルの差異が100未満の場合、デコードの結果が不正確になる可能性があります。
狭い幅のバーと広い幅のバーのグレーレベルの差異には注意が必要です。狭い幅のバーはほとんど表示されません。8ビット画像(256グレーレベル)において、バーとスペース(空白)の幅が2種類のバーコードでグレーレベルの差が115を超える場合、またバーとスペース(空白)の幅が4種類のバーコードでグレーレベルの差が100を超える場合は、結果が不正確になる可能性があります。
ノイズは、背景に描画された関心領域の長方形の標準偏差として定義されます。ノイズは、バーとスペース(空白)の幅が2種類のバーコードでは57未満、バーとスペース(空白)の幅が4種類のバーコードでは27未満である必要があります。
バーコード上の反射によって、バーコードから読み取られた値の誤差が生じる場合があります。同様に、反射によって隠されたバーとスペース(空白)もエラーの原因となります。