網路城邦
上一篇 回創作列表 下一篇  字體:
QR Code可以讓日文、漢字直接記錄在條碼裡,能讓條碼代表一句話或是網址,讓人能更快速地獲取資訊。
2020/02/20 14:59:54瀏覽2723|回應0|推薦2

QR Code。一個完整的QR Code裡包含了定位點、功能區域、資訊區域、容錯區域、掩模圖案,每一塊都不可缺少。可以讓日文、漢字資料直接記錄在條碼裡,也就是讓條碼代表一句話、或是一串網址。讓人能更快速地獲取資訊,未來或許會有更多應用延伸應用出現,QR Code定位標記讓掃描端能夠360度辨識QR Code的方向,因此就算反著掃,也能判斷出哪邊是開始、哪邊是結束,避免讀取錯誤。http://classic-blog.udn.com/alpineatks/131778420   

 新北市立樟樹國際實中、新北高工與鶯歌工商學校運用硬體、PC系統、web網頁、App合作研發完成紅外線熱像儀–跨校自製資訊電子化防疫工具與環境建置」,是三級防護再加一http://classic-blog.udn.com/alpineatks/131799623

說謊?文過飾非呢?中國習近平冠狀病毒在1月7日已得知防控武漢肺炎疫情,卻要求1月19日舉辦萬家宴。http://classic-blog.udn.com/alpineatks/131746015

華為孟晚舟應要感恩被拘禁,因禍得福,暫時避開了,說謊,隱瞞,霸道,賄賂WHO的"中國習近平冠狀病毒"造成"中國武漢肺炎"毒害世界的渙散災害! http://classic-blog.udn.com/alpineatks/131735879    

目前依各國中國武漢肺炎確診人數,與各國總人口比率,加上考慮台灣地小人稠,台灣的醫療包容力實不宜樂觀,堅固守衛台灣,最重要 !不要再包機和撤僑了。http://classic-blog.udn.com/alpineatks/131766780

QR Code(QR碼)的應用越來越廣泛,只要拿出手機開啟App,無論是電子海報、個人名片、還是電子支付,「掃」一下就能獲得圖像裡蘊含的訊息QR Code版本越高,內涵的資訊量越大,也就會有越多校正圖塊,避免機器因為資訊量太多產生錯誤。http://classic-blog.udn.com/alpineatks/131778420

QR Code發展與歷史介紹:運作原理、特色、編碼結構分析byZero圈圈

隨著智慧型手機興起,QR Code(QR碼)的應用越來越廣泛,只要拿出手機開啟App,無論是電子海報、個人名片、還是電子支付,「掃」一下就能獲得圖像裡蘊含的訊息。QR Code是種二維條碼的類型,在一維條碼能夠承載的資訊量不足以應付需求之後,二維條碼順勢而生,本篇介紹QR Code的運作原理、特色、編碼結構分析,讓讀者更瞭解這項隨處可見的科技小工具。

QR Code:Quick Response Code,快速響應矩陣圖碼

QR Code是Quick Response Code的縮寫,因為發明者希望QR Code可以快速解碼內容,故以「Quick Response(快速反應)」命名。QR Code的發明可追溯至1994年的日本,由汽車零件業者Denso Wave公司發明,用來追蹤生產線上的貨物,並且讓條碼能容納日文漢字、假名訊息。

與一維條碼最大的差異在於,二維條碼能夠承載更多資料,而QR Code能儲存的資訊種類囊括了數字、字母、二進制(位元組)、以及日文、漢字。可以這麼說,一維條碼代表的資訊以「數字編號」為多,號碼用來識別商品,但QR Code可以讓日文、漢字資料直接記錄在條碼裡,也就是讓條碼代表一句話、或是一串網址。

▲4種不同的二維條碼。因為一維條碼,也就是由線條組成的條碼能承載的資訊量太少,因此最初將2個一維條碼疊加在一起,最後讓X軸、Y軸都帶有訊息,進化成二維條碼。二維條碼又稱為矩陣條碼,種類有很多,其中屬QR Code最為常見。(圖片來源:Wiki)

▲一維條碼的運作原理介紹。

QR Code標準在1999年發佈 應用包含物流、驗票、網站登錄

日本的QR Code標準在1999年公佈,而其對應的ISO國際標準(ISO/IEC 18004)則在2000年獲得。ISO(國際標準化組織)認定QR Code為國際規格,其規格公開,雖由Denso Wave公司持有專利,但不會被執行。

而除了能記錄日文與漢字之外,QR Code的辨識速度快、360度全方位都能被識別、容錯能力高、佔位面積更小,讓它被廣泛運用在產品跟蹤、物品識別、文件管理等方面。除此之外個人名片、網站登錄等地方也常常見到QR Code的蹤跡。

▲行政院農委會的產銷履歷也應用了QR Code,右下則是傳統一維條碼。(圖片來源:產銷履歷資訊網

▲台鐵的車票也應用了QR Code,乘客只要將車票上的QR Code對準驗票閘門的掃描區,即能掃描通過。現在台鐵也有QR Code電子化車票,詳情可見2019台鐵網路購票App教學懶人包

不過,QR Code並非任何情況下都能夠辨識,比如說QR Code過度擠壓變形、印刷不夠清晰、或是外框沒有足夠的白邊的話,就會造成識讀困難。雖然如此,和傳統一維條碼相較,QR Code可以360度掃描辨識,容錯能力更是讓它在視覺造型上有了更多的變化。

有40種尺寸與4種容錯級別 最多能容納7089字元

先不論微型QR Code等特殊變形,一般常見的QR Code共有40種不同的尺寸版本,版本依據儲存密度與結構區分,每一種QR Code的組成結構、能夠儲存的資訊量多寡都不完全相同。QR Code的尺寸版本以「 Version」標示,如版本1,也就是 Version 1,QR Code尺寸為21x21位元, Version 2的尺寸為25x25位元,Version 40則為177x177位元,Version越高,QR Code的尺寸越大,能夠承載的資訊量也就越多。

是否有看過融入標誌的QR Code呢?「容錯」又稱「糾錯」,是指當某部分資訊缺失的時候,其它部分會自動填補,讓整體資訊依然可以完整辨識,容忍錯誤發生。簡單來說,就是當QR Code條碼缺了一角,或是沒有辨識完全,資訊依然可以被掃瞄出來,這就是QR Code容錯能力的表現,是一維條碼辦不到的。

QR Code的4個容錯等級:

  • L(低):可修正7%的字碼。
  • M(中):可修正15%的字碼。
  • Q(中高):可修正25%的字碼。
  • H(高):可修正30%的字碼。

▲傳統一維條碼只要組成有損傷,就難以辨識,不過QR Code可以容許一定程度範圍內的資訊流失,因此就算缺角(圖左)、或是在條碼中放入Logo(圖右),都不會影響資訊讀取。這也讓QR Code在設計上有非常多的變化。(圖片來源:Wiki)

▲QR Code共有40種不同的尺寸版本,前後版本尺寸之間都相差4個單位。(圖片來源:萬能的Wiki)

容錯能力越高,同等級的QR Code能夠容量的資訊量就越少,這是因為將原本能夠儲存資料的地方,拿去做容錯備份,於是一般儲存資料的空間被壓縮,能夠儲存的資料也就變少。由以上訊息可以得知,資訊容量最大的QR Code版本為Version 40、容錯能力為L等級,此版本最多可以容納7089個數字,或是4296個字母,或1800個漢字。一般的一維條碼最多只能輸入20個資訊量。

▲QR Code由無數個黑白小格子組成,每一個格子就是一個位元(bits)。由上圖可知,組成一個純數字(Numeric only)需要3又1/3個位元,也就是3又1/3個小格子,至於要組成一個ISO 8859-1編碼的二進制字元,則需要8 bits,也就是8個小格子。以資訊容量最大的Version 40、容錯能力為L等級的QR Code來說,純數字最多能夠容納7089個,也就是能夠表示7089個0至9的數字

QR Code原理與結構:定位標記、定時資訊、版本與格式資訊

因為電腦只能接收0與1,因此無論是數字、字母、還是漢字,所有訊息都要回到0與1的編排來轉換。QR Code裡有無數個黑色與白色的方格,每一格黑白格子都是一個位元(bits),黑色方格代表1,白色方格代表0,掃碼時機器只要判斷反光與否,就能將黑白圖像轉換為1與0的組合。

在QR Code的結構之中,最重要的就是位於上方兩側與左下的3個「回」狀定位標記。定位標記讓掃描端能夠360度辨識QR Code的方向,因此就算反著掃,也能判斷出哪邊是開始、哪邊是結束,避免讀取錯誤。正因如此,QR Code裡面的定位點一定會保留,無論其它資訊如何變化,定位點都不可以被取代。

▲QR Code結構。根據QR Code版本不同,結構會有細微的差異。QR Code版本越高,內涵的資訊量越大,也就會有越多校正圖塊,避免機器因為資訊量太多產生錯誤。

如上圖所示,QR Code裡真正紀錄資料的地方僅有灰色的「資料與糾錯碼訊息」,而在該區塊裡,又會分為真正紀錄資訊的區域,以及容錯區域。QR Code的定位標準格式資訊位置都是固定的,至於定時資訊(Timing Patterns,又稱時序圖案)用來讓機器辨識QR Code的單位格子大小、以及提供座標位置,像是基準點一樣,避免QR Code尺寸過大,或是掃描時變形,導至格子判讀錯誤。

定位標準格式資訊位置都是固定的;定時資訊(Timing Patterns,又稱時序圖案)用來讓機器辨識QR Code的單位格子大小、以及提供座標位置,像是基準點一樣,避免QR Code尺寸過大,或是掃描時變形,導至格子判讀錯誤。▲QR Code的訊息編排順序。最右下Enc告知編碼格式,也就是接下來會使用哪種編碼,內容是數字、字母、還是漢字。Len告知長度,最後會有End告知訊息結束。和之前提到的一樣,組成一個字元(英數漢字)所需要的位元(小格子)數量不同,上圖一格就是一個字元,該字元需要由8個位元組成。左半邊E1至E7都是容錯區域。

▲QR Code的另外一種排列方式。 右半邊的D為交叉排列的資訊區,左半邊的E為容錯區域。

QR Code的編碼順序有些複雜,字元會依照某種順序排列,而位元根據運行方向,也會有不同的讀取順序(見上圖右)。需要注意的是,每個版本的QR Code訊息編排順序都不同,容錯等級也牽涉到QR Code的訊息編排方式,因此就算是同樣的訊息,也會產生不同的QR Code。

編碼結束後再加上掩碼(Masking)步驟

在複雜的編碼結束之後,為了避免資料區域出現連續的空白、連續的黑色區域、或是和定位點相似的圖形,還會再進行掩碼程序,透過演算法,選擇合適的掩模圖案(又稱遮罩),再經過操作後融進資訊裡。掩碼是為了讓QR Code的黑白色散開,更容易被機器識別,二維碼的掩模圖案共有8種,會在資料區內不停地重複計算,功能區域則不會有更動。

掩碼步驟完成後,QR Code才是真正完成。因此一個完整的QR Code裡包含了定位點、功能區域、資訊區域、容錯區域、掩模圖案,每一塊都不可缺少。

▲二維條碼共有8種掩模圖案,每一種都有對應的規則與計算方式,並不是隨意挑選一個完整的QR Code裡包含了定位點、功能區域、資訊區域、容錯區域、掩模圖案,每一塊都不可缺少。

使用QR Code設計的房間,每一個都連結至色情訊息,象徵現在生活裡雖然雙眼看不見,但隱藏的色情無所不在。一個完整的QR Code裡包含了定位點、功能區域、資訊區域、容錯區域、掩模圖案,每一塊都不可缺少。(圖片來源:Dezeen)

以圍棋作為發想 讓訊息接收更加方便快速

不知不覺間,QR Code已佔領了各個角落,當初發明者以「圍棋」作為發想,讓QR Code容納更多元的資訊,直接改變了現代人的生活習慣。QR Code看似簡單,不過其實有一定的複雜度,如果像筆者一樣對程式編碼毫無概念,要理解它背後的運作規則實在是需要不少精神。無論如何,QR Code讓人能更快速地獲取資訊,未來或許會有更多應用延伸出現,再度掀起一波浪潮。

延伸閱讀:

AI世代的孩子自己設計手機App吧!!手機App應用設計從遊戲者轉變成創作者可以將自己製作的APP裝在自己Android手機帶回家哦http://classic-blog.udn.com/alpineatks/131778095

只要拿出手機開啟 QR Code「掃」一下App,無論是電子海報、個人名片、還是電子支付就能獲得圖像裡蘊含的訊息http://classic-blog.udn.com/alpineatks/131778420

孩子學程式不止是為了要當程式設計師或工程師,主要是訓練邏輯力 ⅹ 培養自學力 ⅹ 激發創造力 ⅹ 擁有自信力 ⅹ 解決問題的能力等之邏輯運算能力與解決問題的能力,創造未來!   http://classic-blog.udn.com/alpineatks/131751783

"期有機會與年輕人共事",必儘量供獻經驗專長跨界經驗,專業,異業人才合作,盼教學相長,使公司業務鼎盛,更有幸運奇跡發生http://classic-blog.udn.com/alpineatks/131728009  

( 不分類不分類 )
回應 推薦文章 列印 加入我的文摘
上一篇 回創作列表 下一篇

引用
引用網址:https://classic-blog.udn.com/article/trackback.jsp?uid=alpineatks&aid=131778420