python一维码识别,python二维码生成识别代码

  python一维码识别,python二维码生成识别代码

  今天又啥也没干我完蛋了哦就是没办法沉下心来,咋办。还是先来条自然语言处理吧。

  七,凡事必有至少三个解决方法

  对事情只有一个方法的人,必陷入困境,因为别无选择。

  对事情有两个方法的人也陷入困境,因为他制造了左右两难,进退维谷的局面给自己。

  有第三个方法的人,通常会找到第四,五个方法,甚至更多的方法。

  有选择就是有能力,所以,有选择总比没有选择好。

  至今不成功,只是说至今用过的方法都得不到想要的效果。

  没有办法,只是说已知的办法都行不通。

  世界上尚有很多我们过去没有想过,或者尚未认识的方法。

  只有相信尚有未知的有效方法,才会有机会找到它和使事情改变。

  不论什么事情,我们总有选择的权利,而且不只是一个。

  "没有办法"使事情画上句号,"总有办法"使事情有突破的可能。

  "没有办法"对你没有好处,应停止想它;"总有办法"对你有好处,故应把它留在脑中。

  为何不使自己成为第一个找出办法的人?

  额。纯粹就是今天没得写的了,只好丢点以前写的抠脚程序,也不能叫程序,只能实现功能吧。也是东抄点,西抄点,然后一拼来的。

  用的树莓派3B然后插个通用串行总线摄像头就行了

  文件名:colorList.py这是颜色库。

  1 #-*-编码:UTF 8-*-

  2进口数量作为np3导入集合四

  5

  6 defgetColorList():7 dict=集合。默认字典(列表)8

  9 #黑色

  10 lower_black=np.array([0,0,0])11 upper_black=np.array([180,255,46])12 color _ list _ black=[]13 color _ list _ black。追加(lower _ black)14 color _ list _ black。append(upper _ black)15 dict[ black ]=color _ list _ black 16

  17 #灰色

  18 lower_gray=np.array([0,0,46])19 upper_gray=np.array([180,43,220])20 color _ list _ gray=[]21 color _ list _ gray。追加(lower _ gray)22 color _ list _ gray。append(upper _ gray)23 dict[ gray ]=color _ list _ gray 24

  25 #白色

  26 lower_white=np.array([0,0,221])27 upper _ white=NP。array([180,30,255])28 color _ list _ white=[]29 color _ list _ white。追加(lower _ white)30 color _ list _ white。append(upper _ white)31 dict[ white ]=color _ list _ white 32

  33 #红色

  34 lower_red=np.array([156,43,46])35 upper_red=np.array([180,255,255])36 color _ list _ red=[]37 color _ list _ red。追加(lower _ red)38 color _ list _ red。append(upper _ red)39 dict[ red ]=color _ list _ red 40

  41 #红色2

  42

  43 lower_red=np.array([0,43,46])44 upper_red=np.array([10,255,255])45 color _ list _ red 2=[]46 color _ list _ red 2。追加(lower _ red)47 color _ list _ red 2。append(upper _ red)48 dict[ red 2 ]=color _ list _ red 249

  50 #橙色

  51 lower_orange=np.array([11,43,46])52 upper _ orange=NP。array([25,255,255])53 color _ list _ orange=[]54 color _ list _ orange。追加(lower _ orange)55 color _ list _ orange。append(upper _ orange)56 dict[ orange ]=color _ list _ orange 57

  58 #黄色

  59 lower_yellow=np.array([26,43,46])60 upper _ yellow=NP。数组([34,255,255])61 color _ list _ yellow=[]62 color _ list _ yellow。追加(lower _ yellow)63 color _ list _ yellow。append(upper _ yellow)64 dict[ yellow ]=color _ list _ yellow 65

  66 #绿色

  67 lower_green=np.array([35,43,46])68 upper_green=np.array([77,255,255])69 color _ list _ green=[]70 color _ list _ green。追加(lower _ green)71 color _ list _ green。append(upper _ green)72 dict[ green ]=color _ list _ green 73

  74 #青色

  75 lower_cyan=np.array([78,43,46])76 upper_cyan=np.array([99,255,255])77 color _ list _ cyan=[]78 color _ list _ cyan。append(lower _ cyan)79 color _ list _青色。append(upper _ cyan)80 dict[ cyan ]=color _ list _ cyan 81

  82 #蓝色

  83 lower_blue=np.array([100,43,46])84 upper_blue=np.array([124,255,255])85 color _ list _ blue=[]86 color _ list _ blue。追加(lower _ blue)87 color _ list _ blue。append(upper _ blue)88 dict[ blue ]=color _ list _ blue 89

  90 #紫色

  91 lower_purple=np.array([125,43,46])92 upper _ purple=NP。array([155,255,255])93 color _ list _ purple=[]94 color _ list _ purple。追加(lower _ purple)95 color _ list _ purple。append(upper _ purple)96 dict[ purple ]=color _ list _ purple 97

  98 returndict99

  100

  101 if _ _ name _ _== _ _ main _ _ :102 color _ dict=getColorList()103 print(color _ dict)104

  105 num=len(color _ dict)106 print( num=,num)107

  108 for d in color _ dict:109 print( key=,d)110 print(value=,color_dict[d][1])

  然后是xf_color.py这就能识别颜色了(这是识别已有图片文件版的)原理就是用上面的色库算出图片颜色面积哪个最大就算是啥颜色。抠脚。

  #-*-编码:UTF 8-*-

  import cv2 importcolorlistdefget _ color(frame):print( go in get _ color )

  hsv=cv2.cvtColor(帧,cv2 .COLOR_BGR2HSV)

  maxsum=0

  颜色=无

  d颜色_字典的颜色列表。获取颜色列表():

  mask=cv2.inRange(hsv,color_dict[d][0],color _ dict[d][1])# cv2。我在写(d).巴布亚新几内亚,掩码)

  binary=cv2.threshold(掩码,127,255,cv2 .THRESH_BINARY)[1]

  binary=cv2.dilate(binary,None,iterations=2)# cv2。我在写(d 1。png ,二进制)

  cnts=cv2.findContours(二进制,cv2 .RETR _外部,cv2 .CHAIN_APPROX_SIMPLE)[-2]

  对于增量,总和=:

  sum=cv2。轮廓区域(c)# print( % s,%d %(d,sum))

  if sum maxsum:

  maxsum=sum

  color=dreturncolorif _ _ name _ _= _ _ main _ _ :

  文件名=。/images/test _黄色。png frame=cv2。即时消息阅读(文件名)打印(get_color(frame))

  文件名:xf_realize.py这是用摄像头来识别颜色。就是加了个拍照功能哦对只返回红绿蓝三种颜色,因为搬的物料就是这三种颜色懒得改了。

  #-*-编码:UTF 8-*-

  导入cv 2 importxf _ colordefvideox():

  vix=cv2 .视频捕获(0)whileTrue:

  ret,tu=vix.read()

  cv2.imshow(拍照_照片,涂)

  cv2.waitKey(1)

  cv2.imwrite(color.png ,tu)

  filename=cv2.imread(color.png )

  颜色=xf _ color。如果color== red ,则获取颜色(文件名)或color==red2 :打印(红色)

  结果=1

  破裂

  elif color==green :打印(“绿色”)

  结果=2

  破裂

  elif color==blue :打印(“蓝色”)

  结果=3

  breakvix.release()

  cv2。destroyallwindows()返回结果,如果_ _ name _ _= _ _ main _ _ :

  videox()

  接下来是识别二维码的(有二维码图片文件)文件名:xf_scance.py

  #-*-编码:UTF 8-*-

  导入pyz条。pyz bar为从PIL导入图片的pyz bar,ImageEnhancedefscance():

  image= photo。png img=image。open(image)# img=图像增强.亮度(img).增强(2.0) #增加亮度

  # #img=ImageEnhance .锐度(img).增强(17.0) #锐利化

  # img=图像增强。对比度(img).增强(4.0) #增加对比度

  # img=img.convert(L) #灰度化

  barcodes=pyzbar.decode(img)条形码中的条形码:

  barcodeData=条形码。数据。decode( utf-8 )returnbarcodedata if _ _ name _ _= _ _ main _ _ :

  扫描()

  再来个摄像头扫二维码的:

  #-*-编码:UTF 8-*-

  importcv 2 import xf _ scancedefvideox():

  vix=cv2 .视频捕获(0)whileTrue:

  ret,tu=vix.read()

  cv2.imshow(拍照_照片,涂)

  cv2.waitKey(1)

  cv2.imwrite(photo.png ,tu)

  result=xf _ scance。scance()if result:# print(result)

  breakvix.release()

  cv2。destroyallwindows()返回结果,如果_ _ name _ _= _ _ main _ _ :

  r=videox()print(r)

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: