当前位置: 首页 > news >正文

企业网站优化的三层含义百度云网盘资源搜索引擎

企业网站优化的三层含义,百度云网盘资源搜索引擎,旅游网页,济南网站建设求职如何使用该程序进行开发 1.寻找串口 查看识别串口号 ls -l /dev/tty*找到相应的串口并在程序里修改 ser serial.Serial(/dev/ttyUSB0,9600)2.摄像头 括号里是0还是1取决于摄像头是内部还是外部 不确定的话就挨着尝试#xff0c;反正就是二选一嘛 #视频捕获…如何使用该程序进行开发 1.寻找串口 查看识别串口号 ls -l /dev/tty*找到相应的串口并在程序里修改 ser serial.Serial(/dev/ttyUSB0,9600)2.摄像头 括号里是0还是1取决于摄像头是内部还是外部 不确定的话就挨着尝试反正就是二选一嘛 #视频捕获口1为本机笔记本0为外接摄像头 #视频捕获只有本机一个摄像头默认为0 cap cv2.VideoCapture(0)3.设置某一程序开机自启 意思就是树莓派一开机相应的程序就会自动运行起来。 4.程序环境 上位机树莓派4b 下位机stm32大疆a板 5.主程序使用逻辑 主程序一直在死循环里。 每次循环都会读串口寄存器传来的数值这里不能使用阻塞型串口要使用延时三秒的串口进行工作模仿硬件的串口寄存器原理 根据相应的数值进行if语句的判断进而执行相应的命令 板子初始发送1 树莓派执行二维码操作返回结果a123321z 随后板子收到这个结果发送5树莓派停止工作 随后板子发送2或者3或者4 树莓派进行颜色识别返回识别结果ggggz或rrrrz或者bbbbz 随后板子收到这个结果发送5树莓派停止工作 周而复始循环往复 接下来是主程序 这是肖巨龙物流车的上位机程序 此程序运行环境是 树莓派4b 下位机是大疆A板经过USB转ttl模块识别出串口号为/dev/ttyUSB0 查找串口号需要使用 ls -l /dev/ttyUSB* 命令 import cv2 import numpy as np import math import time import imutils from imutils.video import VideoStream import numpy import pyzbar.pyzbar as pyzbar import argparse import datetime from PIL import Image,ImageEnhance import serial import binasciidef port_open():# # ser.port 12345 #设置端口号# ser.baudrate 9600 #设置波特率# ser.bytesize 8 #设置数据位# ser.stopbits 1 #设置停止位# ser.parity N #设置校验位if (ser.isOpen()False):ser.open()if(ser.isOpen()):print(打开成功)else:print(打开失败)def port_close():if (ser.isOpen()):ser.close()if (ser.isOpen()False):print(关闭成功)else:print(关闭失败)def send(send_data):if (ser.isOpen()False):port_open()if (ser.isOpen()):ser.write(send_data.encode(utf-8)) #utf-8 编码发送#ser.write(binascii.a2b_hex(send_data)) #Hex发送print(发送成功,send_data)else:print(发送失败)port_close()def barcode_recog():print(开始二维码识别)vs VideoStream(0).start() time.sleep(2.0)flagFalse#后面的break用到这一条件while True:# 循环来自视频流的帧frame vs.read()frame imutils.resize(frame, width1000)#找到视频中的条形码并解析所有条形码barcodes pyzbar.decode(frame)# 循环所有检测到的条形码for barcode in barcodes:# 提取条形码的边界框位置# 绘出围绕图像上条形码的边界框(x, y, w, h) barcode.rectcv2.rectangle(frame, (x, y), (x w, y h), (0, 0, 255), 2)# 条形码数据为字节对象# 需要先把它转换成字符串barcodeData barcode.data.decode(utf-8)#barcodeData二维码信息barcodeType barcode.type#barcodeType二维码信息的类别#print(barcodeData)#输出二维码信息barcodeData list(barcodeData)barcodeData.pop(3)barcodeData .join(barcodeData)barcodeData a barcodeData zprint(barcodeData)send(barcodeData)if barcodeData ! :flagTruecv2.imshow(barcode, frame)#图形化窗口展示结果cv2.waitKey(5)if flag :#跳出while循环print(二维码函数结束)time.sleep(2)#用两秒时间来展示图形化窗口结果breakvs.stop()cv2.destroyAllWindows()def barcode_recog_new():print([INFO] starting video stream...)vs VideoStream(0).start()time.sleep(2.0)flagFalse#后面的break用到这一条件 # 循环来自视频流的帧# 抓取来自单线程视频流的帧 # 将大小重新调整为最大宽度400像素frame vs.read()frame imutils.resize(frame, width1000)# 找到视频中的条形码并解析所有条形码barcodes pyzbar.decode(frame)# 循环所有检测到的条形码for barcode in barcodes:# 提取条形码的边界框位置# 绘出围绕图像上条形码的边界框(x, y, w, h) barcode.rectcv2.rectangle(frame, (x, y), (x w, y h), (0, 0, 255), 2)# 条形码数据为字节对象# 需要先把它转换成字符串barcodeData barcode.data.decode(utf-8)#barcodeData二维码信息barcodeType barcode.type#barcodeType二维码信息的类别barcodeData list(barcodeData)barcodeData.pop(3)barcodeData .join(barcodeData)barcodeData a barcodeData zprint(barcodeData)#输出二维码信息send(barcodeData)if barcodeData ! :flagTruecv2.imshow(Barcode Scanner, frame)#图形化窗口展示结果cv2.waitKey(5)if flag :#跳出while循环print(识别成功解析成功)#time.sleep(2)#用两秒时间来展示图形化窗口结果cv2.destroyAllWindows()vs.stop()def recognizeByColor(ball_color):#视频捕获口1为本机笔记本0为外接摄像头#视频捕获只有本机一个摄像头默认为0#cap cv2.VideoCapture(0)ret, frame cap.read()frame imutils.resize(frame, width300)frame frame[60:120, 120:200]gs_frame cv2.GaussianBlur(frame, (5, 5), 0) # 高斯模糊hsv cv2.cvtColor(gs_frame, cv2.COLOR_BGR2HSV) # 转化成HSV图像erode_hsv cv2.erode(hsv, None, iterations2) # 腐蚀 粗的变细inRange_hsv cv2.inRange(erode_hsv, color_dist[ball_color][Lower], color_dist[ball_color][Upper])cnts cv2.findContours(inRange_hsv.copy(), cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)[-2]cv2.imshow(color, frame)#图形化窗口展示结果cv2.waitKey(5)if(len(cnts)0):time.sleep(0.5) #节省系统开销print(无该颜色)return Falseelse:#definite the color acording to the color recognizedif ball_color blue:colorbbbbzprint(color)#port_open()send(color)#port_close()if ball_colorred:colorrrrrzprint(color)#port_open()send(color)#port_close()if ball_colorgreen:colorggggzprint(color)#port_open()send(color)#port_close()#下面四句话展示矩形框选效果正式比赛时可以去掉节省资源c max(cnts, keycv2.contourArea)rect cv2.minAreaRect(c)box cv2.boxPoints(rect)cv2.drawContours(frame, [np.int0(box)], -1, (0, 255, 255), 2)cv2.imshow(color, frame)cv2.waitKey(1)return Truevs.stop()cv2.destroyAllWindows()#主程序运行前的初始化 ser serial.Serial(/dev/ttyUSB0,9600,timeout3)#这一语句默认会打开串口 recogTime 5 #识别时间 gapTime 3 #机械臂旋转调整时间 a1 color_dist {red: {Lower: np.array([156, 43, 60]), Upper: np.array([180, 255, 255])},blue: {Lower: np.array([100, 43, 46]), Upper: np.array([124, 255, 255])},green: {Lower: np.array([35, 43, 35]), Upper: np.array([77, 255, 255])},}while True:port_open()time.sleep(2)print(等待曾巨发送...)usser.read(10)long_of_uslen(us)print(信号length:,long_of_us)if (long_of_us):usus[0]#因为是字节的方式所以取第一个字节else:us1print(这是第 ,a, 次while循环)aa1print(曾巨发送过来的是,us)if us2 or us3 or us4:cap cv2.VideoCapture(0)#cv2.namedWindow(color, cv2.WINDOW_AUTOSIZE)#cv2.namedWindow(color, cv2.WINDOW_FREERATIO)for i in pa:ball_color green#print(aaaa)time0 time.time()print(识别绿色)while time.time()-time0 recogTime:#表示这个while循环运行五秒ret, frame cap.read()if ret:#该条件表示读取到摄像头if frame is not None:#该条件表示可以读取摄像头的画面if(recognizeByColor(ball_color)):#如果颜色识别函数返回tureprint(成功识别绿色)breakelse:print(无画面)else:print(无法读取摄像头)ball_color red#print(bbbb)time1 time.time()time.sleep(gapTime)print(识别红色)while time.time()-time1 recogTime:ret, frame cap.read()if ret:if frame is not None:if(recognizeByColor(ball_color)):print(成功识别红色)breakelse:print(无画面)else:print(无法读取摄像头)ball_color blue#print(cccc)time2 time.time()time.sleep(gapTime)print(识别蓝色)while time.time()- time2 recogTime:ret, frame cap.read()if ret:if frame is not None:if(recognizeByColor(ball_color)):print(成功识别蓝色)breakelse:print(无画面)else:print(无法读取摄像头)cap.release()if us0x01:barcode_recog_new()if us0x05:cv2.destroyAllWindows()time.sleep(5)if (us!0x01) and (us!0x02) and (us!0x03) and (us!0x04) and (us!0x05):send(a123321z)send(a123321z)print(串口通信有误受到干扰)us0x04
http://www.zqtcl.cn/news/905043/

相关文章:

  • 做神马网站优化快速排国外乡村建设网站
  • 东莞网站优化服务公司天河做网站开发
  • ui在线设计网站滁州 来安县建设局网站
  • 做印尼购物网站如何发货wordpress怎么换中文
  • 深圳方维网站建设公司企业网站推广方式和策略
  • 沙洋县住房和城乡建设局网站单页网站下载
  • 江宁区住房建设局网站建设工程扣分查询网站
  • wordpress火车采集优化算法分类
  • 厦门做网站公司有哪些有什么好的加盟店项目
  • wap网站开发技术怎么做消费信贷网站
  • 公司网站开发外包公司深圳网站建设sz886
  • 中英文网站建设需要懂英语吗电气网站设计
  • 双语网站用什么程序做新网站如何被网站收录
  • 怎么做视频平台网站想开个小说网站怎么做
  • 网站安全监测预警平台建设成效阐述网络营销策略的内容
  • 网站上的qq如何做悬浮沧州做网站的公司
  • 电子商务网站系统规划报告移动商城 网站建设方法方式
  • 网站建设架构选型引擎seo优
  • 什么电脑做网站前段用网站建设工作人员有哪些职责
  • 网站建设技巧网站建设 总结
  • 有站点网络营销平台搜一下百度
  • 沈阳网站建设找德泰诺wordpress 访客计数器
  • 专业网站建设价格分析企业展示型网站建设方案
  • 东丽做网站公司帮做网站的公司
  • 网站的icon图标做多大验证wordpress
  • html制作音乐网站代码已经买了域名怎么做网站
  • 网站做收付款接口山东专业的制作网站
  • 龙岗建设高端网站如何建立网站会员系统吗
  • 中国建设银行的网站色彩wordpress 图片采集器
  • 渭南做网站价格江西省城乡住房建设部网站