IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 2021-08-31智能车二维码识别 -> 正文阅读

[人工智能]2021-08-31智能车二维码识别

1.Ubutu自带python3.6环境
2.安装opencv,参考博客ubuntu 18.04 上安装opencv【全程】_forever_008的博客-CSDN博客_ubuntu18.04安装opencv 注:如果Ubuntu下载包太慢可以在windows下下载好直接拉到ubuntu中然后再进行编译。
3.安装aruco,只需要安装opencv-contrib-python这个库,aruco包放在这个库里面,参考博客OpenCV-Aruco模块调用 [python版]_ShakalakaPHD的博客-CSDN博客
或者参考https://pypi.org/project/opencv-contrib-python/(这是官网安装步骤)
4.标定摄像头,得到摄像头参数.下载aruco包安装,下载编译参考博客基于opencv的ArUco的视觉定位之ArUco安装_share space的博客-CSDN博客_aruco opencv
标定摄像头参考博客ArUco 相机校准(from images)_gaiyonghuming110的博客-CSDN博客
5.Aruco码识别:注:aruco中会涉及到aruco码预定义字典的使用,
Aruco字典介绍:DICT_6X6_250中,6x6表示的是边为6个方块的二维码,250则表示这个字典中有250个码。查看DICT_6X6_250的类型为“int”,然后直接输出DICT_6X6_250会得到一个数字,这样在加载与定义字典的时候可以直接使用这个数字,

因此加载与定义字典DICT_6X6_250就可以用10代替,这一步很重要,这样可以用一个for循环将所有的字典同时调用起来。
代码参考博客玩了下opencv的aruco(python版)_weixin_30617695的博客-CSDN博客,加上自己的修改,得到以下代码。
Aruco在电脑上识别参考代码:
import time
import cv2
from cv2 import aruco

cap = cv2.VideoCapture(0)
ret, frame = cap.read()#le ret:
while True:
ret, frame = cap.read()#
h1, w1 = frame.shape[:2]#frame.shape[ : 2] 表示取彩色图片的长、宽,frame.shape[ : 3] 则表示取彩色图片的长、宽、通道。

 # 读取摄像头画面
 gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
 for i in range(16):
  aruco_dict = aruco.Dictionary_get(i)#  i表示所有的预装字典,用数字表示出来,方便使用
  parameters = aruco.DetectorParameters_create()
  corners, ids, rejectedImgPoints = aruco.detectMarkers(gray,
                                                      aruco_dict,
                                                      parameters=parameters)
  aruco.drawDetectedMarkers(frame, corners, ids)

  #cv2.putText(frame,)
 if ids is not None:
     print('id:'+str(ids))
 cv2.imshow("frame", frame)
 key = cv2.waitKey(1)
 if key == 27:  # 按esc键退出
    print('esc break...')
    cap.release()
    cv2.destroyAllWindows()
    break
#if key == ord(' '):  # 按空格键保存
    #        num = num + 1
    #        filename = "frames_%s.jpg" % num  # 保存一张图像
    #filename = str(time.time())[:10] + ".jpg"
    #cv2.imwrite(filename, frame)

解决错误:
1.pip install 时报错 ERROR: Could not install packages due to an EnvironmentError: [WinError 5] 拒绝访问(已解决)
参考博客pip install 时报错 ERROR: Could not install packages due to an EnvironmentError: [WinError 5] 拒绝访问(已解决)_小小白学计算机的博客-CSDN博客
2小车上识别二维码,小车上获得的是原图,因此需要进行镜像转换,参考代码:

import time
import numpy as np
import cv2
from cv2 import aruco
cap = cv2.VideoCapture(0)
ret, frame = cap.read()
while ret:
ret, frame = cap.read()
picture=cv2.flip(frame,1)#图片镜像转换
h1, w1 = picture.shape[:2]

gray = cv2.cvtColor(picture, cv2.COLOR_BGR2GRAY)
#for i in range(16):
aruco_dict = aruco.Dictionary_get(3)
parameters = aruco.DetectorParameters_create()
corners, ids, rejectedImgPoints = aruco.detectMarkers(gray,
                                                      aruco_dict,
                                                      parameters=parameters)
aruco.drawDetectedMarkers(picture, corners, ids)

#cv2.putText(frame,)
if ids is not None:

    print('id:'+str(ids))
cv2.imshow("frame", picture)
key = cv2.waitKey(1)
if key == 27:  # 
    print('esc break...')
    cap.release()
    cv2.destroyAllWindows()
    break
#if key == ord(' '):
    #        num = num + 1
    #        filename = "frames_%s.jpg" % num  # 
  #  filename = str(time.time())[:10] + ".jpg"
   # cv2.imwrite(filename, frame)

Ros工作空间创建、节点编写参考博客ROS 发布消息和订阅消息 for Python_Coxhuang的博客-CSDN博客_python订阅ros消息

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2021-09-01 11:55:38  更:2021-09-01 11:57:55 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/27 16:29:20-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码