Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
QRコードを読み取る
Search
Keita
November 09, 2018
Technology
0
970
QRコードを読み取る
2018/11/09 KyotoLT
Keita
November 09, 2018
Tweet
Share
More Decks by Keita
See All by Keita
転職してすぐリモートワークになった話
fmty
1
500
システム開発の契約とかお⾦の話
fmty
0
390
レガシーなコミュニケーションツール
fmty
0
1k
Other Decks in Technology
See All in Technology
Liquid AI Hackathon Tokyo プレゼン資料
aratako
0
110
AIツールでどこまでデザインを忠実に実装できるのか
oikon48
6
3.5k
今この時代に技術とどう向き合うべきか
gree_tech
PRO
2
2k
Performance Insights 廃止から Database Insights 利用へ/transition-from-performance-insights-to-database-insights
emiki
0
300
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
5
43k
能登半島災害現場エンジニアクロストーク 【JAWS FESTA 2025 in 金沢】
ditccsugii
0
890
HR Force における DWH の併用事例 ~ サービス基盤としての BigQuery / 分析基盤としての Snowflake ~@Cross Data Platforms Meetup #2「BigQueryと愉快な仲間たち」
ryo_suzuki
0
230
Click A, Buy B: Rethinking Conversion Attribution in ECommerce Recommendations
lycorptech_jp
PRO
0
100
それでも私が品質保証プロセスを作り続ける理由 #テストラジオ / Why I still continue to create QA process
pineapplecandy
0
120
業務効率化をさらに加速させる、ノーコードツールとStep Functionsのハイブリッド化
smt7174
2
140
WEBサービスを成り立たせるAWSサービス
takano0131
1
180
AWSでAgentic AIを開発するための前提知識の整理
nasuvitz
2
180
Featured
See All Featured
Making the Leap to Tech Lead
cromwellryan
135
9.6k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
Documentation Writing (for coders)
carmenintech
75
5.1k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
190
55k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
How to Think Like a Performance Engineer
csswizardry
27
2k
The Power of CSS Pseudo Elements
geoffreycrofte
79
6k
How GitHub (no longer) Works
holman
315
140k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Building a Scalable Design System with Sketch
lauravandoore
463
33k
Transcript
QRコードを読み取る KyotoLT 第22回 (2018.11.09) ⼩⻄啓太 @fmty
⼩⻄啓太 @fmty 製造業や物流関係様向けシステムのSEやってます バーコードとかRFIDとか使って⾊々やってます 好き→C#、SQLServer、Windows 嫌い→椎茸、納⾖
バーコード
バーコード JAN-13 CODE39 CODE128 EAN128 ITF
⼆次元コード
⼆次元コード QRコード マトリクス型 PDF417 DataMatrix CODE49 スタック型
QRコードを読み取る
None
None
None
None
①ファインダーパターン • 3点に配置される傾き認識マーク • 縦・横・斜め、どこからでも 1 0 111 0 1になる
①ファインダーパターン ②アライメントマーク • ドットのズレ調整⽤パターン • QRモデル2から実装 • データはこのアライメントマークに重ならな いよう配置される
• 誤り訂正レベルとマスクパターンを識別 ①左から右上に向かって読む ②「101010000010010」でマスクされている ので復号する → 0100 1101 1100 001
③ 先頭2桁「01」が誤り訂正レベル 次の3桁「001」がマスクパターン ③フォーマット情報 レベル 2進数 能力 L 01 7% M 00 15% Q 11 25% H 10 30%
マスクパターン(001)に該当するセルは反転 されている ④データを読む 参照子 条件 000 (i+j) mod 2 =
0 001 i mod 2 = 0 010 j mod 3 = 0 011 (i+j) mod 3 = 0 100 (( i div 2)+(j div 3)) mod 2 = 0 101 (ij) mod 2 + (ij) mod 3 = 0 110 ((ij) mod 2 +(ij) mod 3) mod 2 = 0 111 ((ij)mod 3 + (i+j) mod 2) mod 2 = 0
④データを読む • 各セルは左図のように右下から交互に読んで いきます。 • セル8個〜10個が1グループになっている。
④モード識別⼦と格納⽂字数 • 最初の1ブロックは識別⼦と⽂字数 • 4マスは格納データの種類 • 8〜10マスで格納⽂字数を読み取ります • 0010なので英数字モード •
⽂字数は000000111なので7⽂字
④変換表と⽐較する • 変換表と⽐較しながら読む • 英数字モードはほぼ読めない • 2⽂字を1セットとして、最初の値を45倍 にして、⼆番⽬の値を⾜して2進数に変換 します(英数字モードの場合) 20x45+34=934
934= 1110100110 1110100110 = KY
④実データを読む • 読み進めていくと…
KY OT OL T KYOTOLT となります^ ^ 残りは誤り訂正レベルに応じた補填 ⽤のデータになります。
読めましたか?
スキャナー買いましょう
ありがとう御座いました • 仕組みが分かれば、スマホなどいらぬ……ッ! ⾁眼のみで解読するQRコード講座 - ねとらぼ http://nlab.itmedia.co.jp/nl/articles/1801/31/news008.html • QRコードの構成 |
バーコード講座 | キーエンス https://www.keyence.co.jp/ss/products/autoid/codereader/basic2d_qr.jsp • QRコードをつくってみる http://www.swetake.com/qrcode/qr1.html • QRコードの基本 http://www.tech-jp.com/QRCode/Term.html