二維碼及生成二維碼的方法
【專利摘要】一種計算機實現(xiàn)的生成二維碼的方法,包括提供由單元組成的二維碼;提供包括與所述二維碼的所述單元對應(yīng)的片塊的圖片;提供彼此不同的多個單元圖案,其中每個單元圖案包括多個子單元;以及根據(jù)所述圖片的所述片塊,為所述二維碼的所述單元決定所述多個單元圖案中的所述一個單元圖案。
【專利說明】二維碼及生成二維碼的方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及二維碼及生成二維碼的方法,尤其涉及嵌有圖案的二維碼及生成所述 二維碼的方法。
【背景技術(shù)】
[0002] 快速響應(yīng)碼(QR code)是一種包括黑白方格的二維矩陣碼。每個方格被稱為模塊 (Module,也稱為碼元)??焖夙憫?yīng)碼具有數(shù)據(jù)段。數(shù)據(jù)被轉(zhuǎn)換成比特流(Bit stream),然后 以8比特部分(稱為碼字(codeword))的形式存儲于數(shù)據(jù)段中。通常在快速響應(yīng)碼中,一個 模塊表示一個比特。
[0003] 快速響應(yīng)碼被置于產(chǎn)品允許讀碼器易于掃描的位置,通常在產(chǎn)品的外表面上。然 而,無視覺愉悅感的黑白碼會破壞產(chǎn)品的美觀。為了克服這樣的不利后果,通過將顏色、文 字、插圖或者標(biāo)志結(jié)合到快速響應(yīng)碼中來生成視覺快速響應(yīng)碼(Visual QR code)。
[0004] 用于生成視覺快速響應(yīng)碼的現(xiàn)有方法不甚完美。為了不論掃描時的方向性如何, 或者在亮度較差的環(huán)境下,仍能保證視覺快速響應(yīng)碼的可讀性,這些方法通過使用內(nèi)嵌圖 像對快速響應(yīng)碼做了有限的修改。結(jié)果,所產(chǎn)生的視覺快速響應(yīng)碼不能清晰地顯示內(nèi)嵌的 圖像。
【發(fā)明內(nèi)容】
[0005] 在本發(fā)明的一個實施例中,一種二維碼,包括對應(yīng)于碼字的一個比特的至少一個 單元。所述至少一個單元包括多個子單元,其中所述多個子單元中的一個子單元用于存儲 所述碼字的所述比特。
[0006] 本發(fā)明的一個實施例公開了一種計算機實現(xiàn)的生成二維碼的方法。該方法包括: 提供由單元組成的二維碼;提供包括與所述二維碼的所述單元對應(yīng)的片塊的圖片;提供彼 此不同的多個單元圖案,其中每個單元圖案包括多個子單元;以及根據(jù)所述圖片的所述片 塊,為所述二維碼的所述單元決定所述多個單元圖案中的一個單元圖案。
[0007] 本發(fā)明的另一個實施例公開了一種計算機實現(xiàn)的生成二維碼的方法。該方法包 括提供由多個單元組成的二維碼;提供包括與所述二維碼的所述多個單元對應(yīng)的多個片塊 的圖片;提供彼此不同的多個單元圖案,其中每個單元圖案包括多個子單元;提供圖案分 配集合,所述圖案分配集合包括對應(yīng)地表示所述多個二維碼的所述多個單元的多個集合元 素;根據(jù)所述圖案分配集合、所述二維碼、所述圖片及所述多個單元圖案,定義能量函數(shù); 以及使用所述能量函數(shù)為每個集合元素決定所述多個單元圖案中的所述一個單元圖案。
【專利附圖】
【附圖說明】
[0008] 通過參照附圖并閱讀下面的說明,本發(fā)明的目的及優(yōu)點將變得更加顯而易見,附 圖中:
[0009] 圖1是示出根據(jù)本發(fā)明的一個實施例生成二維碼的方法的圖;
[0010] 圖2是示出原始二維碼的多個單元及根據(jù)本發(fā)明的一個實施例的合成碼的對應(yīng) 單元圖案的示意圖;以及
[0011] 圖3是示出根據(jù)本發(fā)明的一個實施例的計算機設(shè)備的示意圖。
【具體實施方式】
[0012] 在本發(fā)明的一個實施例中,使用單元圖案(cell pattern)的集合來模擬圖片的多 個片塊(patch)。選擇與圖片中的對應(yīng)片塊相似的單元圖案來替換二維碼的單元,使得該片 塊的圖案可以結(jié)合到二維碼中。進一步地,所選擇的單元圖案與被替換的單元具有相同的 比特值,使得原始二維碼及新二維碼可被掃描并產(chǎn)生相同的結(jié)果。
[0013] 在本發(fā)明的一個實施例中,二維碼包括用于存儲碼信息比特的單元。單元對應(yīng)于 圖片的多個片塊中的一個。每個片塊可以包括多個單位。設(shè)置多個單元圖案,并且每個單 元圖案包括多個子單元。選擇其子單元與對應(yīng)片塊的單位配置(或排列)相似的單元圖案來 替換二維碼的單元。在一個實施例中,所選擇的單元圖案具有與被替換的單元相似的比特 級。在一個實施例中,所選擇的單元圖案可以是與對應(yīng)片塊最相似的單元圖案。在一個實 施例中,所選擇的單元圖案可以為與對應(yīng)片塊最相似的一組單元圖案中的單元圖案。在一 個實施例中,可以通過距離來測量單元圖案與片塊之間的相似度。
[0014] 在本發(fā)明的一些實施例中,二維碼包括多個單元。至少一部分單元用于存儲數(shù)據(jù) 或碼字。碼字可以具有4、8、16或者32比特的長度。優(yōu)選地,每個碼字包括8比特。單元可 以具有但不限于方形。多個單元可以連接在一起,并以二維方式排列??梢孕薷幕蛘咛鎿Q 至少一部分單元,使得每個被修改或者被替換的單元可以包括多個子單元,其中至少一個 子單元用于代表表示碼字或數(shù)據(jù)的比特,而其他的子單元用于顯示至少一部分視覺特征。
[0015] 選擇用于存儲碼字的比特的子單元應(yīng)當(dāng)確??梢哉_地讀出該比特??梢宰裾斩?維碼的標(biāo)準(zhǔn)選擇用于存儲碼字的比特的子單元。例如,當(dāng)二維碼是快速響應(yīng)碼時,通常選擇 一個單元中以3X3矩陣排列的多個子單元的中心子單元用于存儲碼字的比特;否則,可能 無法正確地讀出該比特。然而,如果在仍能正確讀出比特的系統(tǒng)中使用二維碼,則可以選擇 單元中非中心子單元的子單元。
[0016] 各單元可以具有但不限于相同的尺寸。各子單元也可以具有但不限于相同的尺 寸。
[0017] 多個子單元可以排列在但不限于方形矩陣中。多個子單元可以排列在nXn矩陣 中,其中n可以為奇數(shù)并大于1的整數(shù)。
[0018] 二維碼可以包括但不限于黑色和白色的單元。二維碼可以包括但不限于快速響應(yīng) 碼。
[0019] 圖1是示出根據(jù)本發(fā)明的一個實施例生成二維碼的方法的圖。參照圖1,本公開的 方法在計算機設(shè)備上提供或者接收二維碼11。二維碼11可以包括多個單元111。至少一 部分單元111用于存儲數(shù)據(jù)或碼字。在一個實施例中,二維碼11可以包括快速響應(yīng)碼,并 且單元111還可以被稱為模塊(module)。
[0020] 盡管在本發(fā)明實施例中的二維碼11包括黑色和白色的單元111,但本發(fā)明不限于 這樣的實施例。
[0021] 本公開的方法在計算機設(shè)備上提供或者接收原圖片(raw picture)12。原圖片12 可以包括目標(biāo)圖像、字母、圖,標(biāo)志、圖標(biāo)等。盡管本公開使用原圖片12說明本公開的方法, 但本公開不限于這樣的實施例。
[0022] 圖片12可以具有與二維碼11相似的尺寸,如果不是這樣,本公開的方法在計算機 設(shè)備上將圖片12處理為與二維碼11的尺寸匹配所需的尺寸。
[0023] 然后本公開的方法在計算機設(shè)備上將圖片12轉(zhuǎn)換為半色調(diào)圖片(halftone picture) If。在一個實施例中,可以通過本公開的方法產(chǎn)生半色調(diào)圖片If,其公開在由 Chang等人所著、題為"Structure-aware error diffusion (結(jié)構(gòu)感知誤差擴散)"的論文 (ACM Trans. Graph. (Proc.SIGGRAPH Asia)28, 5,162 :1-162 :8, 2009)中,其相關(guān)公開通過 引用合并于此。在一個實施例中,半色調(diào)圖片If可以通過諸如非線性擴散、隨機翻轉(zhuǎn)等的 圖像處理工具產(chǎn)生。產(chǎn)生半色調(diào)圖片I f的方法不限于上述方法。
[0024] 然后,本公開的方法在計算機設(shè)備上識別圖片12的突出特征區(qū)域(salient feature regions)。本公開的方法可以在計算機設(shè)備上使用圖像過濾器來產(chǎn)生重要性地圖 (importance map) Im,該地圖可以高亮顯示出圖片12的突出特征區(qū)域。本公開的方法可 以在計算機設(shè)備上根據(jù)重要性地圖I m決定突出特征區(qū)域。在一個實施例中,本公開的方法 可以在計算機設(shè)備上使用一種技術(shù)來產(chǎn)生重要性地圖Im,該技術(shù)公開在由Kypriandis, J. E?等人所著、題為"Image abstraction by structure adaptive filtering(通過結(jié)構(gòu)自適 應(yīng)濾波的抽象圖像),'的論文(Proc. EG UK Theory and Practice of Computer Graphics, 51-58,2008)中,其相關(guān)公開通過引用合并于此。在另一實施例中,本公開的方法允許用戶 手動決定圖片12中的哪個區(qū)域或者重要性地圖1_"為突出特征區(qū)域。在另一實施例中,圖片 12的突出特征區(qū)域可以通過使用諸如Canny邊緣檢測、梯度圖像運算符等的圖像處理運算 符來決定。
[0025] 圖片12或者半色調(diào)圖片If可以包括與二維碼11的多個單元111對應(yīng)的多個片 塊。片塊可以包括圖片12或者半色調(diào)圖片I f的多個單位。在一個實施例中,每個單位可以 包括至少一個像素。在一個實施例中,片塊包括排列在矩陣中的多個單位。在一個實施例 中,片塊包括排列在nXn矩陣中的多個單位,其中n為大于1的整數(shù)。在一個實施例中,n 大于1并且為奇數(shù)。在本實施例中,片塊是3X3矩陣。
[0026] 參照圖1,在一個實施例中,該方法可以為圖案分配步驟15執(zhí)行模塊細(xì)分步驟16, 在步驟16中,二維碼11的至少一部分單元111中的每一個單元111可以被細(xì)分為與圖片 12的對應(yīng)片塊的單位相對應(yīng)的多個子單元。
[0027] 半色調(diào)圖片乙及二維碼11可以表示為集合M:
【權(quán)利要求】
1. 一種二維碼,包括與碼字的比特對應(yīng)的至少一個單元,所述至少一個單元包括多個 子單元,其中所述多個子單元中的一個子單元用于存儲所述碼字的所述比特。
2. 根據(jù)權(quán)利要求1的二維碼,其中所述多個子單元中的所述一個子單元為所述多個子 單元的中心子單元。
3. 根據(jù)權(quán)利要求1的二維碼,所述二維碼為快速響應(yīng)碼。
4. 一種計算機實現(xiàn)的生成二維碼的方法,包括: 提供由單元組成的二維碼; 提供包括與所述二維碼的所述單元對應(yīng)的片塊的圖片; 提供彼此不同的多個單元圖案,其中每個單元圖案包括多個子單元;以及 根據(jù)所述圖片的所述片塊,為所述二維碼的所述單元決定所述多個單元圖案中的一個 單元圖案。
5. 根據(jù)權(quán)利要求4的方法,其中所述單元與所述多個單元圖案中的所述一個單元圖案 具有相同的比特值。
6. 根據(jù)權(quán)利要求4的方法,其中通過考慮所述多個單元圖案中的所述一個單元圖案與 所述圖片的所述片塊之間的距離測度,來為所述二維碼的所述單元決定所述多個單元圖案 中的所述一個單元圖案。
7. 根據(jù)權(quán)利要求4的方法,其中通過進一步考慮指示所述圖片的所述片塊的可視化重 要性的重要性權(quán)重,來為所述二維碼的所述單元決定所述多個單元圖案中的所述一個單元 圖案。
8. 根據(jù)權(quán)利要求4的方法,其中通過進一步考慮所述片塊與其相鄰片塊之間的平滑 度,來為所述二維碼的所述單元決定所述多個單元圖案中的所述一個單元圖案。
9. 根據(jù)權(quán)利要求4的方法,其中通過進一步考慮多個距離測度,所述多個距離測度中 的每一個用于所述多個單元圖案中的一對單元圖案,來為所述二維碼的所述單元決定所述 多個單元圖案中的所述一個單元圖案。
10. 根據(jù)權(quán)利要求4的方法,其中通過進一步考慮可讀性的量度,來為所述二維碼的所 述單元決定所述多個單元圖案中的所述一個單元圖案。
11. 根據(jù)權(quán)利要求10的方法,其中所述可讀性的量度通過下述步驟決定: 提供多個其他二維碼; 將每個所述多個其他二維碼的每個單元用與其具有相同比特值的一個所述單元圖案 替換,以獲得多個合成碼; 當(dāng)引入至少一個空間擾動時,對每個合成碼解碼; 為每個單元圖案決定成功解碼率;以及 使用所述成功解碼率為對應(yīng)的所述單元圖案決定所述可讀性的量度。
12. -種計算機實現(xiàn)的生成二維碼的方法,包括: 提供包括多個單元的二維碼; 提供包括與所述二維碼的所述多個單元對應(yīng)的多個片塊的圖片; 提供彼此不同的多個單元圖案,其中每個單元圖案包括多個子單元; 提供圖案分配集合,所述圖案分配集合包括對應(yīng)地表示所述多個二維碼的所述多個單 元的多個集合元素; 根據(jù)所述圖案分配集合、所述二維碼、所述圖片及所述多個單元圖案,定義能量函數(shù); 以及 使用所述能量函數(shù)為每個集合元素決定所述多個單元圖案中的所述一個單元圖案。
13. 根據(jù)權(quán)利要求12的方法,其中所述能量函數(shù)包括用于測量所述圖片與所述圖案分 配集合之間的相似度距離的數(shù)據(jù)項。
14. 根據(jù)權(quán)利要求12的方法,其中所述能量函數(shù)包括平滑度項,所述平滑度項用于對 妨礙空間平滑度的為所述圖案分配集合的所述單元圖案的決定施加修正。
15. 根據(jù)權(quán)利要求12的方法,其中所述能量函數(shù)包括可靠性項,所述可靠性項包括指 示所述圖片的對應(yīng)片塊的可視化重要性的重要性權(quán)重。
16. 根據(jù)權(quán)利要求12的方法,其中所述能量函數(shù)包括可靠性項,所述可靠性項用于提 高所述圖案分配集合的可讀性。
17. 根據(jù)權(quán)利要求16的方法,其中所述可靠性項被定義為:
nii是集合M = h .)|/ =丨,.,.,/:/丨的第i個元素;%是第i個片塊的重要性權(quán) 重;是第i個片塊的比特值;<是所述二維碼的第i個單元的比特值;n是單元數(shù)量;P' 是所述圖案分配集合;P' i是所述圖案分配集合的第i個集合元素;是第f(i)個所述單 元圖案的比特值;以及rfW是可讀性值或者可靠性值。
18. 根據(jù)權(quán)利要求17的方法,其中所述可讀性值通過下述步驟決定: 提供多個其他二維碼; 用與其具有相同比特值的一個所述單元圖案替換每個所述多個其他二維碼的每個單 元,以獲得多個合成碼; 當(dāng)引入至少一個空間擾動時,對每個合成碼解碼; 為每個單元圖案決定成功解碼率;以及 使用所述成功解碼率為對應(yīng)單元圖案決定所述可讀性值。
19. 根據(jù)權(quán)利要求12的方法,其中所述能量函數(shù)包括約束限制,所述約束限制用于確 保被分配到所述圖案分配集合的每個單元圖案與所述圖片的對應(yīng)單元具有相同的比特值。
20. 根據(jù)權(quán)利要求12的方法,其中所述能量函數(shù)包括約束限制,所述的約束限制用于 確保被分配到所述圖案分配集合的單元圖案的至少一部分中的每個單元圖案與所述圖片 的對應(yīng)單元具有相同的比特值。
【文檔編號】G06K19/06GK104346640SQ201310747203
【公開日】2015年2月11日 申請日期:2013年12月26日 優(yōu)先權(quán)日:2013年8月8日
【發(fā)明者】李潤容, 朱宏國, 尼洛伊·J·米特拉 申請人:李潤容, 朱宏國, 尼洛伊·J ·米特拉