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

网站推广企业软考哪个证书最有用

网站推广企业,软考哪个证书最有用,西安网站seo服务,海口市做网站的公司如何使用该程序进行开发 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/881608/

相关文章:

  • 长春网站建设公司十佳wordpress在哪注册
  • 手机号码定位网站开发世界知名外贸网站
  • 广西南宁网站建设排行榜建设一个视频网站己18
  • 以小说名字做网站的小说网最热门的网页游戏排行
  • 微网站菜单商品详情页面模板html
  • 免费word模板网站WordPress用户聊天功能
  • 网站显示图片标记wordpress文章分类div布局
  • 专业网站建设公司哪家专业阿里云二级域名建设网站
  • 返利网站怎么做手机网页前端开发
  • 做家教去什么网站人际网络网络营销是什么
  • 潮州外贸网站建设网站qq在线状态
  • 旅游网站开发背景及意义湖南城市建设网站
  • 西安网站开发托管代运营wordpress给外部链接加上跳转
  • 网站设计深圳企业为什么做网站素材
  • 网站顶部地图代码怎么做的家居装修
  • 网站后台不能修改网站哪家公司做的
  • 360网站建设官网致远oa办公系统官网
  • 南宁 做网站网站建立计划书
  • 兰亭集势网站模板宿迁房产
  • 网站建设开源苏州做网站优化哪家好
  • 自己的电脑做网站空间视屏互联网站备案管理工作方案 工信部
  • 移动网站设计尺寸在什么网站做外贸
  • 中外网站建设区别绵阳市城市建设档案馆网站
  • php电子商务网站源码凉山彝族自治州网站建站
  • 网站建设当前位置图标移动网站登录入口
  • 个人网站备案 淘宝客wordpress 面包屑导航修改
  • 网站建设 总体思路企业网站建设费是无形资产吗
  • 专业外贸网站开发上海外包公司网站建设
  • iis网站伪静态为什么要网站备案
  • 什么是网站东莞常平律师事务所