지식 바코드의 구조에 대해 알아보자
본문
앞서서, 항상 그렇지만 금번 바코드 자료도 어느정도 내 지식선에서 쓴 글이라 오류가 있을 수 있다. 오류가 보이면 댓글로 보완 바란다.
이제는 일상생활에서 너무 당연하게 제품들에 그려져 있는 바코드.
너무 당연히만 받아들이고 있지만, 사실 이게 없었다면 마트 계산대는 이 제품의 가격이 맞다 틀리다를 가지고 점원과 손님이 싸우느라 계산을 못할 지경이 될 거라는 점은 충분히 예상할 수 있다.
다들 너무 간단히 넘어갈 수 있는 바코드의 원리에 대해 자세히 알아보자
먼저 바코드란 말 그대로 Bar(막대) 로 이뤄져 있는 code 이다.
즉 하나하나의 Bar의 두껍고 가늘은 형태 및 바가 없음 으로 어떠한 코드를 만들어내는 것이다.
아래 숫자들을 보며 이 숫자는 뭔가 싶은 사람들 꽤 있었을거다.
별거 아니다. 그냥 저 막대를 해석하면 저 숫자들이 나오는거다.
조금 더 깊숙히 들어가자면, 세계적으로 가장 많이 쓰인다고 볼 수 있는 위 EAN-13 바코드에서는, 앞자리 880은 대한민국, 1234 4자리는 회사 일련번호(생산자일수도 있고, 판매원일수도 있다) 뒤 5자리는 제품 종류, 마지막 1자리는 바코드가 맞는지 검산해주는 코드이다.
위와 같은 느낌으로 레이저를 쏴준 후 그걸 검출하는 방식으로 읽어들이는데, 여기서 잘못 읽으면 100만원짜리를 100원에 팔수도 있으니 마지막에 숫자 하나를 검산자로 넣어서 잘못 읽는것을 방지하는 것이다.
이 바코드는 자리수와 방식에 따라 수십가지이며, 요즘은 평면형태의 2D바코드중 QR코드가 퀵 리딩 특성으로 인해 대세로 자리잡아가고 있는 실정이다.
오늘은 구조에 대해서만 알아보기로 했으니 가장 간단한 구조만 알아보기에 앞서, 최초의 바코드로 여겨지는 불스아이를 먼저 보자
소 눈처럼 생겨서 불스아이다.
왜 요렇게 생겼냐면 어느 방향에서 찍어도 똑같은 바코드가 보이기 때문이다.
요즘 1자 바코드를 찍으려면 바코드 리더기의 정면에서 레이저 리더기를 정위치 맞추는걸 생각하면 어찌보면 혁신이다.
그런데, 틈이 너무 작다.....
잉크가 인쇄중 번지기라도 하면 어느 방향에서도 못읽는 코드가 되어버린다.
이런 점에서, 반대로 불스아이의 아주 일부만 세로로 세워서 간격을 크게 하는것을 만든게 당시 IBM의 바코드 개발 방향이 아니었나 싶다.
읽어준 와중에 미안하지만 일부만 크게 했다는건 내 뇌피셜이니 어디 딴데가서 말하면 욕먹을거다
여하튼, 그런 바코드는, 아래와 같은 구조다
바코드의 가장 중요한 부분은 바로 콰이어트 존의 여부다.
의외로 다들 놓치기 쉬운데, 앞부분의 하얀 부분이 있어야 그다음 스타트 캐릭터와 마지막 스톱 캐릭터 가 잘 읽히고 바코드가 읽히는거다.
그 사이에 몇가지 막대가 숫자에 맞게 잘 들어가고, 마지막 검산자까지 잘 확인되는 복잡한 공정이 바코드리더기의 "삐" 인 것이다.
바코드 패턴은 나무위키 가져왔다.
https://namu.wiki/w/%EB%B0%94%EC%BD%94%EB%93%9C
이렇게 만들어진 바코드는 재미있는 특성이 하나 있다.
구조특성상 어쨌거나 중간에 흠집이 나건 뭐하건 한줄만 잘 읽히면 읽히는거다.
맨 처음 보여준 요녀석이나
중간만 자른 요녀석이나
심지너 이렇게 기울어져 잘라져도 스캐너 성능이 좋아서 일정한 간격의 막대만 읽어내면 원 코드를 해독할 수도 있다는거다.
그런 특성 덕분에 아래와 같은 디자인적 바코드들이 가끔 제품들에 보일수 있는 것이다.
자 잡설 서론이 길었는데,
오늘 모 개붕이가 아래와 같이 기프트콘을 뿌렸다
https://www.dogdrip.net/306360387
파란색 선 안을 보면 지만 쓸려고 바를 어설프게 넣어서 누가 쓰는걸 방지한 것으로 보인다.
그러나, 위에서 말했다시피 바코드는 딱 한줄만 있으면 읽을수 있다.
원본을 멀쩡한 상단 바만 나올 수 있게 자르고...
이거를 쭈우우욱 늘려주면 완성
귀찮아서 쫌만 늘렸다
바코드 확인하는 사이트에서도 잘 읽히는것을 확인했다.
다들 과속운전 조심하고, 즐거운 일요일 오후 보내라
뻘글은 이만 퇴장한다. 총총
관련링크
댓글목록 0
등록된 댓글이 없습니다.
- 1(current)