4 คะแนน โดย GN⁺ 2024-01-23 | 1 ความคิดเห็น | แชร์ทาง WhatsApp

โครงสร้างของ QR โค้ด

  • QR โค้ดประกอบด้วยโมดูลขนาด 21x21 (เรียกอีกอย่างว่าพิกเซล) ซึ่งตรงกับเวอร์ชัน 1
  • QR โค้ดมีหลายขนาด และในแต่ละเวอร์ชัน ขนาดจะเพิ่มขึ้นครั้งละ 4
  • ส่วนต่างๆ ของ QR โค้ดช่วยให้สแกนเนอร์สามารถจดจำและอ่าน QR โค้ดได้อย่างถูกต้อง

ลายมาสก์

  • QR โค้ดใช้มาสก์เพื่อหลีกเลี่ยงกลุ่มโมดูลสีดำหรือสีขาวขนาดใหญ่
  • มีตัวเลือกมาสก์ 8 แบบ และแต่ละแพตเทิร์นมีการอธิบายผ่านเรื่องราวเพื่อให้จดจำได้ง่าย

โหมดการเข้ารหัส

  • เพื่อถอดรหัสเนื้อหาของ QR โค้ด ก่อนอื่นต้องรู้การเข้ารหัสของเนื้อหานั้น
  • ข้อมูลการเข้ารหัสจะอยู่ที่มุมล่างขวาเสมอ และสามารถตรวจสอบได้หลังจากใช้มาสก์แล้ว

ลำดับการอ่าน

  • เนื้อหาจะเริ่มจากมุมล่างขวา แล้วไล่ขึ้นไปแบบซิกแซกระหว่างสองคอลัมน์ ก่อนจะลงไปยังคอลัมน์ถัดไป
  • ระบบจะข้ามทุกพื้นที่พิเศษ

การถอดรหัสความยาว

  • ข้อมูลความยาวจะถูกให้มาในหน่วยไบต์ ซึ่งแสดงความยาวรวมทั้งหมดของเนื้อหาใน QR โค้ด

การถอดรหัสเนื้อหา

  • เนื้อหาของ QR โค้ดจะถูกถอดรหัสเป็นหน่วยไบต์ และแต่ละไบต์จะสอดคล้องกับอักขระ ASCII
  • ไบต์ที่เหลือผู้ใช้สามารถลองถอดรหัสเองเพื่อฝึกฝนได้

การแก้ไขข้อผิดพลาด

  • QR โค้ดมีฟังก์ชันแก้ไขข้อผิดพลาดเพื่อให้ยังสามารถอ่านได้ แม้ว่าบางส่วนจะเสียหาย ไม่ชัดเจน หรือหายไป
  • การแก้ไขข้อผิดพลาดถูกสร้างขึ้นด้วยคณิตศาสตร์ที่ซับซ้อน แต่สำหรับจุดประสงค์ของการอ่านด้วยมือ สิ่งนี้ไม่สำคัญ

ยินดีด้วย!

  • ตอนนี้คุณได้เรียนรู้ทุกอย่างที่จำเป็นสำหรับการถอดรหัส QR โค้ดแบบง่ายด้วยตนเองแล้ว
  • เพื่อฝึกฝน คุณสามารถกดปุ่ม "Random code" หรือหา QR โค้ดจริงแล้วใช้ปุ่ม "Scan code"

GN⁺ ความเห็น

  • บทความนี้มีประโยชน์มากในการเรียนรู้หลักการทำงานของ QR โค้ดและวิธีถอดรหัสด้วยตนเอง
  • หากเข้าใจแต่ละส่วนของ QR โค้ด ลายมาสก์ และโหมดการเข้ารหัส ก็จะช่วยเพิ่มพูนความรู้ทางเทคนิคได้
  • การกล่าวถึงฟังก์ชันแก้ไขข้อผิดพลาดอย่างย่อช่วยให้เข้าใจความทนทานและความน่าเชื่อถือของ QR โค้ดได้ดีขึ้น

1 ความคิดเห็น

 
GN⁺ 2024-01-23
ความคิดเห็นใน Hacker News
    • ประสบการณ์ช่วงปลายยุค 90 หรือต้นยุค 2000 ที่พยายามถ่ายโอนข้อมูลจากดิสก์ Atari 8-bit ไปยังพีซี
    • รู้จักสาย SIO2PC และซอฟต์แวร์ที่ใช้เชื่อมต่อพอร์ต SIO ของ Atari กับพอร์ตซีเรียลของพีซี แต่ไม่มีทักษะด้านอิเล็กทรอนิกส์พอจะทำเอง
    • จึงเขียนโปรแกรม BASIC บน Atari เพื่ออ่านข้อมูลดิสก์ทีละเซกเตอร์แล้วแสดงบนหน้าจอ
    • ใช้ Atari ที่ต่อเข้ากับการ์ดทีวีของพีซี และโปรแกรม Delphi ที่รันบนพีซีเพื่อจับภาพหน้าจอและถอดรหัสข้อมูล
    • เซกเตอร์ว่างทำให้การปรับตำแหน่งพิกเซลลำบาก จึงเพิ่มลวดลาย mask และ checksum เข้าไป
    • ด้วยวิธีนี้จึงถ่ายโอนข้อมูลทั้งดิสก์ไปยังพีซีได้ และมองว่านี่คือผลงานวิศวกรรมที่ดีที่สุดของตน
    • ราว 10 ปีต่อมาได้พัฒนาโปรแกรม SIO2PC ชื่อ AspeQt และปัจจุบันฟอร์กจากชุมชนที่ใหม่กว่าอย่าง RespeQt ก็ยังเป็นเครื่องมือที่ได้รับความนิยมสูงสุดในชุมชน Atari
    • คำถามเกี่ยวกับโหมดเข้ารหัส ASCII ของ QR code และคำขอให้อธิบายเรื่องการแก้ไขข้อผิดพลาด
    • สงสัยว่า "โหมดเข้ารหัส" ASCII ที่กล่าวถึงในบทความคืออะไร และโหมดอื่น ๆ อ่านอย่างไร
    • ขอคำอธิบายเรื่องการแก้ไขข้อผิดพลาด พร้อมเน้นว่าแม้อ่านด้วยมือก็ยังต้องคำนวณการแก้ไขข้อผิดพลาด
    • คำขอให้อธิบายเพิ่มเติมเกี่ยวกับการแก้ไขข้อผิดพลาด
    • ต้องการคำอธิบายว่าข้อมูลการแก้ไขข้อผิดพลาดอยู่ตรงไหน และถูกนำไปใช้อย่างไร
    • ถามว่าสามารถอ่าน QR code ที่มีการแก้ไขข้อผิดพลาดด้วยมือได้หรือไม่
    • รายการโพสต์ที่เกี่ยวข้องบน Hacker News
    • บทความเกี่ยวกับการถอดรหัส QR code ด้วยมือในปี 2012, 2022, 2020 และ 2018
    • ขอบคุณสำหรับคำอธิบายที่ดีเกี่ยวกับวิธีอ่าน QR code พร้อมแชร์ลิงก์ข้อมูลเพิ่มเติมเกี่ยวกับการถอดรหัสบาร์โค้ด 1D และรหัส UPC
    • ชื่นชมความสามารถของบทความในการสร้างกราฟิกแบบไดนามิก
    • ประสบการณ์กับปริศนาที่ต้องถอดรหัส QR code ที่เสียหายอย่างหนักด้วยมือ ซึ่งเป็นส่วนหนึ่งของ Mystery Hunt ปี 2023
    • อ้างว่าได้ดูคู่มือหลายฉบับแต่ไม่มีฉบับไหนสมบูรณ์ และบทความที่ละเอียดกว่านี้จะมีประโยชน์มาก
    • ความสนใจเกี่ยวกับการแก้ไขข้อผิดพลาดของ QR code และการแชร์ข้อมูลว่าสามารถกู้คืนได้ตั้งแต่ 7% ถึง 30%
    • ประสบการณ์ที่เคยพยายามอ่าน QR code ด้วยมือ และคำถามเกี่ยวกับความจำเป็นของลวดลาย mask
    • กล่าวถึงการค้นหาการตั้งค่าการแก้ไขข้อผิดพลาดที่เหมาะสมที่สุด และการขาดแคลนงานวิจัยเกี่ยวกับผลของการตั้งค่าที่หลากหลายและการทำงานของระบบสแกนในสภาพแวดล้อมจริง
    • หนึ่งในเหตุผลที่เลิกพยายามอ่าน QR code ด้วยตาคือ URL มักจะเขียนไว้ด้านล่างอยู่แล้ว
    • แชร์ลิงก์วิดีโอเกี่ยวกับการถอดรหัส QR code เมื่อ 10 ปีก่อน และหน้าเว็บแบบอินเทอร์แอ็กทีฟเกี่ยวกับกระบวนการสร้าง QR code