最終更新日: 2023/2/7
スマホで読めたのに、流通現場のリーダーで読めないことがあった
校正の時にスマホのカメラでは読み取れたが、流通現場の光学式バーコードリーダーでは読み取れない場合があります。
その差はどこにあるかといえば、そのバーコードの読み取りの処理の差にあります。
バーコードは、白と黒のバーで構成されています。
それぞれのリーダーはそれをどう読み取るのか?
光学式バーコードリーダーの場合
反射したところ(白い背景)と光が吸収する部分(黒いバー)を受信してアナログ波形を得ることでそこから数字を読み取っています。
光の反射の差→アナログ波形→デジタル信号に変換し、数字を取り出す(2値化)→コード体系の判別(デコード)
スマホのバーコードリーダーアプリの場合
バーコードをカメラで読み取り、その画像を2色に単純化して、そこから数字を読み取りを行っています。要はリーダーが光の波形を読み取っていることを画像のコントラスト差から数字を取り出しているわけです。
画像の2色に単純化→色の差等から数字を取り出す(2値化)→コード体系の判別(デコード)
読み取りに差が出るポイント
一見、同じようなことをしているように見えるのに読み取りに差が生まれるのはなぜかといえば、スマホアプリの画像の単純化による処理によるものです。
画像を単純化する際には読みやすいように線の歪みや太さを均一に補正しますし、コントラストの差も明確に判別ができるようにします。
つまりはバーコードを読みやすいように補修しているわけです。
読み取りが早く、正確なアプリはこのあたりの処理が上手だといえます。
一方、光を使ったバーコードリーダーは素直に光の反射のみからデータを取り出しているわけですから明確にバーコードの品質の差がでてきますし、バーコードの背面が光を反射するような素材ならば読み取りが不安定になります。
実際の現場で読めないトラブルを防ぐには?
上記のように、 両者に読み取りの差が出るのは避けられませんので、実際、現場で使用するバーコードリーダーでテストをするのがベストです。
コードの数字が合っているか?はスマホのバーコードリーダーでも確認できますが、バーコードの読み取りテストとしては実際、現場で使用するバーコードリーダーを使うべきです。
スマホで読めない場合も
一般的にJANコードに代表される一次元コードはスマホで読み取る前提で作られていません。
そのため、一次元コードに関してはアプリの性能に結構、差があります。
普通のバーコードリーダーでは読み取れるのにスマホで読み取れないと逆転現象が起こることもあるので、要注意です。
また、アプリの性能に加えて、カメラの性能にも依存するので、様々な結果が出るわけです。