Code93 & Code93 Extended
作者:wbc 日期:2009-02-09
前兩天完成了code 39和code128,學了不少知識。但barcode的種類繁多,因此希望smartshoot能支援更多類型。今日選擇了code93。
將code93的編碼transform過後,發現和code128極度相似,都是由6個digit組成;由於標準的code93只能表示43個可視字符+一個開始/停止字符,於是後來出現code93 Extended,在原本的基礎上,加上了4個特殊字符:($),(%),(/),(+),用過這4個特殊字符和原有的43個字符組合,就可完整表達 ASCII 0-127的所有字符。比如:(+)A = a 以及 /A =!
插曲:由於在wikipedia查code93的資料,wiki里有一個code39 的sample barcode,我寫完程序,識別他的barcode的時候,竟然發現解碼后是 "Wilipedia" 和他圖片(http://en.wikipedia.org/wiki/File:Code93.png)上顯示的有出入,我懷疑是我自己的dataset出了問題(有checksum,都正確),但檢查后,似乎不是我的問題,於是人眼decode!111141112122.......
結果依然是 Wili..... 不解,圖片出錯了?
詳情請看下表:
彩色區域表示是特殊碼和標準碼組合對應的新編碼
請稍等,圖片正在下載中...
下載XLS文件
將code93的編碼transform過後,發現和code128極度相似,都是由6個digit組成;由於標準的code93只能表示43個可視字符+一個開始/停止字符,於是後來出現code93 Extended,在原本的基礎上,加上了4個特殊字符:($),(%),(/),(+),用過這4個特殊字符和原有的43個字符組合,就可完整表達 ASCII 0-127的所有字符。比如:(+)A = a 以及 /A =!
插曲:由於在wikipedia查code93的資料,wiki里有一個code39 的sample barcode,我寫完程序,識別他的barcode的時候,竟然發現解碼后是 "Wilipedia" 和他圖片(http://en.wikipedia.org/wiki/File:Code93.png)上顯示的有出入,我懷疑是我自己的dataset出了問題(有checksum,都正確),但檢查后,似乎不是我的問題,於是人眼decode!111141112122.......
結果依然是 Wili..... 不解,圖片出錯了?
詳情請看下表:
彩色區域表示是特殊碼和標準碼組合對應的新編碼
請稍等,圖片正在下載中...
下載XLS文件
Barcode編碼及識別: Code39 & Code128
作者:wbc 日期:2009-02-06
2112143113211311231313213121312331112
最近研究了兩類Barcode,Code39 和 Code128。
各有優勢,Code 39頭尾必須是“*”,識別簡單,非1即2,但無checksum,條碼效率低。
Code128分ABC 3個字符集,每個字符由6個數字組成,數字不再只是1或2,而是1,2,3,4共4個類型,識別時較Code 39複雜,開頭6位數決定隨后內容的字符集,有趣的是,在內容中是可以隨時改變字符集內容,這樣大大增加了Code128的使用彈性以及效率,正因如此,同樣的數據,編碼出來的 Barcode128 或許會不同,如:"123456A",由於字符集C全是雙位數字,因此,一段碼可表示兩個數字,在以上情況下,可直接全用字符集A,共需要7個碼各自表示每個字符;我們也可先使用Code128 C做起始,然後只需3個碼就可各自表示12 34 56然後再跳轉回字符集B,再用1個碼表示A。共5個碼。節約了2個碼,共12條黑白線。
一開始,我認為c128是4個數值狀態(1,2,3,4)組成,狀態多,當barcode掃描效果惡劣的情況下,讀取barcode將會很容易失誤,比如如何處理 1和2之間,3和4之間等等。。。但C128的組合設計非常精妙,只要經過處理,誤判問題不會發生。
請稍等,圖片正在下載中...
參考文檔下載
最近研究了兩類Barcode,Code39 和 Code128。
各有優勢,Code 39頭尾必須是“*”,識別簡單,非1即2,但無checksum,條碼效率低。
Code128分ABC 3個字符集,每個字符由6個數字組成,數字不再只是1或2,而是1,2,3,4共4個類型,識別時較Code 39複雜,開頭6位數決定隨后內容的字符集,有趣的是,在內容中是可以隨時改變字符集內容,這樣大大增加了Code128的使用彈性以及效率,正因如此,同樣的數據,編碼出來的 Barcode128 或許會不同,如:"123456A",由於字符集C全是雙位數字,因此,一段碼可表示兩個數字,在以上情況下,可直接全用字符集A,共需要7個碼各自表示每個字符;我們也可先使用Code128 C做起始,然後只需3個碼就可各自表示12 34 56然後再跳轉回字符集B,再用1個碼表示A。共5個碼。節約了2個碼,共12條黑白線。
一開始,我認為c128是4個數值狀態(1,2,3,4)組成,狀態多,當barcode掃描效果惡劣的情況下,讀取barcode將會很容易失誤,比如如何處理 1和2之間,3和4之間等等。。。但C128的組合設計非常精妙,只要經過處理,誤判問題不會發生。
請稍等,圖片正在下載中...
參考文檔下載
Tower of Hanoi - Simulation
作者:wbc 日期:2008-11-07
前幾日,上discrete Math,講到Recursion,剛開始覺得不是什麽新鮮事情,但想不到Recursion的真正用處,我是完全未掌握。
當講到Tower of Hanoi時,用programe怎么做,一時也想不到辦法,睇完ppt后,恍然大悟,竟然可以如此的簡單。
引用內容
爲了驗證這一做法,於是用flash來做了個模擬程式。
單擊打開:
下載此文件
當講到Tower of Hanoi時,用programe怎么做,一時也想不到辦法,睇完ppt后,恍然大悟,竟然可以如此的簡單。
引用內容Move1,2(n)::= Move1,3(n-1);
biggest disk 12;
Move3,2(n-1)
biggest disk 12;
Move3,2(n-1)
爲了驗證這一做法,於是用flash來做了個模擬程式。
單擊打開:
下載此文件
Hough transform
作者:wbc 日期:2008-08-04
- 1
Flash動畫 









