Show GN: TLcube — 세 면의 휘도 순서에 데이터를 싣는 2.5D 바코드

8 hours ago 2

QR을 대신하려고 만든 게 아니라, 옆자리를 하나 만들어 본 오픈 시각 코드입니다. 어떻게 동작하나 육각 셀 하나를 rhombille 타일링으로 마름모 3면(T·L·R)으로 나눕니다. 세 면의 상대 휘도 순위가 심볼 하나가 되는데, 3면이니까 3! = 6가지, base-6 digit 하나입니다. 3 digit을 묶어 GF(211) 소수체 위의 Reed–Solomon으로 오류를 정정합니다. 절대 밝기가 아니라 순서라서 단조 증가 톤 변형에 불변합니다. 전역 조명 변화나 감마, 프린터 톤 매핑은 순서를 바꾸지 못하니까요. QR과 뭐가 다르고, 뭐가 불리한가 데이터 계약이 "면 사이의 순서 + 최소 분리폭" 뿐입니다. 그래서 색·질감·면 그라데이션·애니메이션이 전부 열려 있고, 이 자유도가 이 포맷의 존재 이유입니다. 대신 밀도는 불리합니다. 마름모 셀은 정사각 모듈보다 면적 효율이 낮아요. 밀도 경쟁은 하지 않습니다. 타입은 셋입니다. Type O(육각 필드, k=6/8/10), Type A(삼각, k=6/8/10), Type Y(단일 큐브, n=13/21/25). ECC-M 기준 순 페이로드는 각각 18~65B, 31~101B, 31~141B입니다. 현재 한계 (실측) 실기기로 찍은 사진 9장 기준입니다. 합성 테스트가 아니라 실제 폰 카메라 결과예요. · 복호 성공: Type Y 3/3, Type O 3/3, Type A 2/3, 중앙 QR 변형 8/9 · 복호 시간: Y 약 0.4초, O 약 1.1초, A 약 0.8초. 처음 대비 3.6~5.2배 줄였고 아직 최적화 중입니다 · 셀당 9픽셀이 복호 하한입니다. 같은 거리라도 초광각 렌즈로 찍으면 코드가 작게 담겨 이 선 아래로 내려갑니다 (초광각 7.6px 실패, 광각 9.1px 성공) · 스캐너가 보급되기 전이라 폴백 QR 병기가 사실상 전제입니다 · 표본이 9장이라 성공률이 아니라 현재 상태로 읽어 주세요 구현 스펙과 레퍼런스 구현을 Apache-2.0으로 공개했습니다. 바닐라 JavaScript, 빌드 툴체인 없음, 런타임 의존성 0이고 단일 HTML 파일로 동작합니다. 인코더·디코더·스캐너가 전부 브라우저 안에서 끝나서 서버로 이미지를 보내지 않습니다. 디코더만 구현해도 적합 구현으로 봅니다. 소개·현황: https://tl.estre.so 생성기: https://tlcube.estre.so 스캐너: https://tlscan.estre.so 스펙: h...

Read Entire Article