国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

Python識別處理照片中的條形碼

瀏覽:3日期:2022-07-05 13:09:11

最近一直在玩數獨,突發奇想實現圖像識別求解數獨,輸入到輸出平均需要0.5s。

整體思路大概就是識別出圖中數字生成list,然后求解。

輸入輸出demo

數獨采用的是微軟自帶的Microsoft sudoku軟件隨便截取的圖像,如下圖所示:

Python識別處理照片中的條形碼

經過程序求解后,得到的結果如下圖所示:

Python識別處理照片中的條形碼

def getFollow(varset, terminalset, first_dic, production_list): follow_dic = {} done = {} for var in varset:follow_dic[var] = set()done[var] = 0 follow_dic['A1'].add('#') # for var in terminalset: # follow_dic[var]=set() # done[var] = 0 for var in follow_dic:getFollowForVar(var, varset, terminalset, first_dic, production_list, follow_dic, done) return follow_dic def getFollowForVar(var, varset, terminalset, first_dic, production_list, follow_dic, done): if done[var] == 1:return for production in production_list:if var in production.right: ##index這里在某些極端情況下有bug,比如多次出現var,index只會返回最左側的 if production.right.index(var) != len(production.right) - 1:follow_dic[var] = first_dic[production.right[production.right.index(var) + 1]] | follow_dic[var] # 沒有考慮右邊有非終結符但是為null的情況 if production.right[len(production.right) - 1] == var:if var != production.left[0]: # print(var, '吸納', production.left[0]) getFollowForVar(production.left[0], varset, terminalset, first_dic, production_list, follow_dic, done) follow_dic[var] = follow_dic[var] | follow_dic[production.left[0]] done[var] = 1

程序具體流程

程序整體流程如下圖所示:

Python識別處理照片中的條形碼

讀入圖像后,根據求解輪廓信息找到數字所在位置,以及不包含數字的空白位置,提取數字信息通過KNN識別,識別出數字;無數字信息的在list中置0;生成未求解數獨list,之后求解數獨,將信息在原圖中顯示出來。

def initProduction(): production_list = [] production = Production(['A1'], ['A'], 0) production_list.append(production) production = Production(['A'], ['E', 'I', '(', ')', '{', 'D', '}'], 1) production_list.append(production) production = Production(['E'], ['int'], 2) production_list.append(production) production = Production(['E'], ['float'], 3) production_list.append(production) production = Production(['D'], ['D', ';', 'B'], 4) production_list.append(production) production = Production(['B'], ['F'], 5) production_list.append(production) production = Production(['B'], ['G'], 6) production_list.append(production) production = Production(['B'], ['M'], 7) production_list.append(production) production = Production(['F'], ['E', 'I'], 8) production_list.append(production) production = Production(['G'], ['I', '=', 'P'], 9) production_list.append(production) production = Production(['P'], ['K'], 10) production_list.append(production) production = Production(['P'], ['K', '+', 'P'], 11) production_list.append(production) production = Production(['P'], ['K', '-', 'P'], 12) production_list.append(production) production = Production(['I'], ['id'], 13) production_list.append(production) production = Production(['K'], ['I'], 14) production_list.append(production) production = Production(['K'], ['number'], 15) production_list.append(production) production = Production(['K'], ['floating'], 16) production_list.append(production) production = Production(['M'], ['while', '(', 'T', ')', '{', 'D', ';', '}'], 18) production_list.append(production) production = Production(['N'], ['if', '(', 'T', ')', '{', 'D',';', '}', 'else', '{', 'D', ';','}'], 19) production_list.append(production) production = Production(['T'], ['K', 'L', 'K'], 20) production_list.append(production) production = Production(['L'], ['>'], 21) production_list.append(production) production = Production(['L'], ['<'], 22) production_list.append(production) production = Production(['L'], ['>='], 23) production_list.append(production) production = Production(['L'], ['<='], 24) production_list.append(production) production = Production(['L'], ['=='], 25) production_list.append(production) production = Production(['D'], ['B'], 26) production_list.append(production) production = Production(['B'], ['N'], 27) production_list.append(production) return production_list source = [[5, 'int', ' 關鍵字'], [1, 'lexicalanalysis', ' 標識符'], [13, '(', ' 左括號'], [14, ')', ' 右括號'], [20, '{', ' 左大括號'], [4, 'float', ' 關鍵字'], [1, 'a', ' 標識符'], [15, ';', ' 分號'], [5, 'int', ' 關鍵字'], [1, 'b', ' 標識符'], [15, ';', ' 分號'], [1, 'a', ' 標識符'], [12, '=', ' 賦值號'], [3, '1.1', ' 浮點數'], [15, ';', ' 分號'], [1, 'b', ' 標識符'], [12, '=', ' 賦值號'], [2, '2', ' 整數'], [15, ';', ' 分號'], [8, 'while', ' 關鍵字'], [13, '(', ' 左括號'], [1, 'b', ' 標識符'], [17, '<', ' 小于號'], [2, '100', ' 整數'], [14, ')', ' 右括號'], [20, '{', ' 左大括號'], [1, 'b', ' 標識符'], [12, '=', ' 賦值號'], [1, 'b', ' 標識符'], [9, '+', ' 加 號'], [2, '1', ' 整數'], [15, ';', ' 分號'], [1, 'a', ' 標識符'], [12, '=', ' 賦值號'], [1, 'a', ' 標識符'], [9, '+', ' 加號'], [2, '3', ' 整數'], [15, ';', ' 分號'], [21, '}', ' 右大括號'], [15, ';', ' 分號'], [6, 'if', ' 關鍵字'], [13, '(', ' 左括號'], [1, 'a', ' 標識符'], [16, '>', ' 大于號'], [2, '5', ' 整數'], [14, ')', ' 右括號'], [20, '{', ' 左大括號'], [1, 'b', ' 標識符'], [12, '=', ' 賦值號'], [1, 'b', ' 標識符'], [10, '-', ' 減號'], [2, '1', ' 整數'], [15, ';', ' 分號'], [21, '}', ' 右大括號'], [7, 'else', ' 關鍵字'], [20, '{', ' 左大括號'], [1, 'b', ' 標識符'], [12, '=', ' 賦值號'], [1, 'b', ' 標識符'], [9, '+', ' 加號'], [2, '1', ' 整數'], [15, ';', ' 分號'], [21, '}', ' 右大括號'], [21, '}', ' 右大括號']]

以上就是Python識別處理照片中的條形碼的詳細內容,更多關于python 識別條形碼的資料請關注好吧啦網其它相關文章!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 波多野结衣一区二区在线 | 亚洲国产日产韩国欧美综合 | 99爱视频99爱在线观看免费 | 亚洲国产www | 欧美人成一本免费观看视频 | 亚洲欧美一二三区 | 91欧美精品综合在线观看 | 特大一级aaaaa毛片 | 日韩免费一级毛片欧美一级日韩片 | 欧美成人手机在线 | 精品国产福利 | 色屁屁一区二区三区视频国产 | 免费人成在线观看 | 九九精品视频一区在线 | 欧美成人毛片一级在线 | 视频一区精品 | 99精彩视频在线观看 | 久久免费精品视频 | 伊人狼人综合 | 日韩欧美亚洲每的更新在线 | 一区二区三区在线观看视频 | 日韩欧美高清在线观看 | 亚洲高清免费在线观看 | 九九热视频精品在线观看 | 亚洲国产大片 | 国产免费亚洲 | 爽爽视频在线观看 | 精品午夜寂寞黄网站在线 | 99草精品视频 | 中文字幕亚洲区 | 久久久久久a亚洲欧洲aⅴ | 96精品视频在线播放免费观看 | 操碰91 | 中文字幕二区三区 | 国产三级三级三级三级 | 一区二区三区在线观看视频 | 国产亚洲欧美另类久久久 | 8888奇米四色在线 | 草草影院私人免费入口 | 国产精品视频999 | 乱码在线中文字幕加勒比 |