docker学习
Docker学习记录最近也是把基于aurco的视觉室内定位做好了,摄像头通过检测aruco码就可以获得相对距离和角度,再带入整个机器人的地图中就可以起到一个很好的辅助定位的功能。不过确定就是aruco标签的样式是无法更改的,就一张A4纸贴在墙面上非常影响美观,所以说下一步应该就是进行物体检测例如检测到一幅画、一面墙壁、一个楼梯等特征比较明显的物体来辅助定位。
要实现物体检测我觉得光靠opencv的级联分类器是远远不够的,所以项目肯定是要往速度学习上靠拢的。项目组正好有一台正在使用的GPU服务器,我粗略地看了下配置:cpu是两路志强E5-2640 v4 @ 2.40GHz,8路gtx1080ti,250G内存。
目前有个问题就是,服务器目前运行着项目组其他成员的一些训练程序而且我们用的编程环境可能不同就会造成cuda、tensorflow环境错误。因此我们要使用docker作为训练环境的整体。本文就是记录一些docker的使用方法,作为初学者,记录一下还是很有必要的。
安装简介:Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到 ...
基于ArUco的距离角度定位
基于ArUco的距离角度定位
利用aruco.estimatePoseSingleMarkers()函数返回找到的aurco标签的rvec旋转矩阵、tvec位移矩阵进行换算,找出aurco相对于相机cam的距离和角度,实现利用aurco进行定位
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141import numpy as npimport timeimport cv2import cv2.aruco as ar ...
学习matplotlib-python数据可视化
Matplotlib介绍matplotlib是Python编程语言及其数值数学扩展包 NumPy的可视化操作界面。它利用通用的图形用户界面工具包,如Tkinter, wxPython, Qt或GTK+,向应用程序嵌入式绘图提供了应用程序接口(API)。此外,matplotlib还有一个基于图像处理库(如开放图形库OpenGL)的pylab接口,其设计与MATLAB非常类似–尽管并不怎么好用[来源请求]。SciPy就是用matplotlib进行图形绘制。
matplotlib最初由John D. Hunter撰写,它拥有一个活跃的开发社区,并且根据BSD样式许可证分发。 在John D. Hunter2012年去世前不久,Michael Droettboom被提名为matplotlib的主要开发者。
截至到2015年10月30日,matplotlib 1.5.x支持Python 2.7到3.5版本。Matplotlib 1.2是第一个支持Python 3.x的版本。Matplotlib 1.4是支持Python 2.6的最后一个版本。
Matplotlib 可能是 Python 2D- ...
室内定位
室内定位机器人的室内定位由于卫星导航失效,主要利用机器人底盘 的轮式光电编码器里程记、惯性测量模块和视觉传感器进行定位。轮式里程计和惯性导航集成在机器人的底盘硬件部分,二者算法简单快速,但精度不高,容易受到环境的影响且存在严重的误差累积。同时机器人使用的是麦克纳姆轮它们允许横盘走势、全方向移动但是可以被横向推着走,轮子上的横向小轮的运动姿态无法被编码器捕获,这样会加剧里程计的误差累计。
所以我们需要利用机器人上搭载的摄像头进行视觉定位进行辅助组合定位。
国内外的解决方法
定位技术
范围
分辨率
抗干扰
RFID射频标签
5cm-5m
米级
弱
WIFI
5-10m
米级
强
蓝牙
2-10m
米级
弱
激光雷达SLAM
0-10(25)m
厘米级
强
超宽频UWB标签
60-300m
分米级
强
红外线
5-10m
-
弱
超声波
1-10m
分米级
强
计算机视觉
1m-10m
米级
弱
RFID 定位技术[1]常用的 RFID(Radio Frequency Identification)定位系统主要由标签、读写器、中间件以及数据库四个部 ...
松山湖机器人公司汇总
松灵机器人官方网站:http://www.agilex.ai/
固定电话:+86-0769-22892150本部地址:东莞市松山湖中小企业创业园10栋1楼
邮箱:sales@agilex.ai电话:0769-22892150手机:19925374409
松灵机器人有限公司成立于2016年,是国内领先的机器人底盘制造商和移动机器人系统解决方案服务商。 目前,松灵机器人已经拥有通用型UGV、室内小型AGV、线控改装电动车等移动机器人底盘产品,可服务于安防巡检、园区工业、农业灌溉、物流运输、检测勘探、科研教育等各个领域,为全球不同地区的客户提供性能稳定、质量可靠、7*24h售后无忧的可靠服务。
松灵机器人致力于打造一流的智能制造、智能工业等基础设施,从而实现“让智能机器人进一步解放人类生产力”的伟大愿景。
公司产品概揽
松灵拥有领先的线控型底盘研发技术,可生产适用于各类行业应用场景的低慢速UGV线控底盘,包括轮式与履带式两大体系,目前已经覆盖通用、越野、室内、特殊作业4类典型场景。
候选产品1.TRACER
TRACER作为一款两轮差速AGV,在室内运输领域具有独特的优势,小巧灵 ...
你多久没有仰望夜空了
对夜视的一些看法:
(以下为全彩色夜视仪的实际效果)
python利用opencv进行相机标定(完全版)
今天的低价单孔摄像机(照相机)会给图像带来很多畸变。畸变主要有两种:径向畸变和切想畸变。如下图所示,用红色直线将棋盘的两个边标注出来,但是你会发现棋盘的边界并不和红线重合。所有我们认为应该是直线的也都凸出来了。
在 3D 相关应用中,必须要先校正这些畸变。为了找到这些纠正参数,我们必须要提供一些包含明显图案模式的样本图片(比如说棋盘)。我们可以在上面找到一些特殊点(如棋盘的四个角点)。我们起到这些特殊点在图片中的位置以及它们的真是位置。有了这些信息,我们就可以使用数学方法求解畸变系数。这就是整个故事的摘要了。为了得到更好的结果,我们至少需要 10 个这样的图案模式。
实现步骤拍摄棋盘图首先打印下图:下载 也可直接保存
将其固定到一个平面上,使用相机从不同角度,不同位置拍摄(10-20)张标定图。类似这样的:
python调用opencv相机拍照代码(例):
1234567891011121314import cv2camera=cv2.VideoCapture(0)i = 0while 1: (grabbed, img) = camera.read() cv2.ims ...
python下使用aruco标记进进行检测
ArUco标记
首先什么是aruco标记呢?
aruco标记是可用于摄像机姿态估计的二进制方形基准标记。它的主要优点是检测简单、快速,并且具有很强的鲁棒性。ArUco 标记是由宽黑色边框和确定其标识符(id)的内部二进制矩阵组成的正方形标记。aruco标记的黑色边框有助于其在图像中的快速检测,内部二进制编码用于识别标记和提供错误检测和纠正。aruco标记尺寸的大小决定内部矩阵的大小,例如尺寸为 4x4 的标记由 16 位二进制数组成。
通俗地说,aruco标记其实就是一种编码,就和我们日常生活中的二维码是相似的,只不过由于编码方式的不同,导致它们存储信息的方式、容量等等有所差异,所以在应用层次上也会有所不同。由于单个aruco标记就可以提供足够的对应关系,例如有四个明显的角点及内部的二进制编码,所以aruco标记被广泛用来增加从二维世界映射到三维世界时的信息量,便于发现二维世界与三维世界之间的投影关系,从而实现姿态估计、相机矫正等等应用。
OpenCV中的ArUco模块包括了对aruco标记的创建和检测,以及将aruco标记用于姿势估计和相机矫正等应用的相关API,同时还提供了标 ...
git的使用firebase+github pagse同时提交博客
firebase的访问一直不稳定,所以还是在github pagse上面也同步一份博客的内容吧
git的使用记录感谢一下@magidrag0n大佬的教学
首先在你的github创立一个名叫:你的github用户名+ github.io的仓库
我的github用户名叫zengwenjian123所以我建立的仓库名叫:zengwenjian123.github.io
然后命令行进入到博客的文件夹
12cd hexo #进入博客更目录
安装插件
1npm install --save hexo-deployer-git
打开站点配置文件_config
在最下面添加一个函数
1234deploy: type: 'git' repo: 'https://github.com/ZengWenJian123/ZengWenJian123.github.io' branch: 'master'
这里填入的是你自己的仓库路径
运行设置账户名
12git config --global user.email "you@example.com"git conf ...
Hexo博客收录百度和谷歌2020.7.14更新
博客已经搭建成功了一段时间了,并且添加了一些博文,不过看到博客底部的访客人数还是感觉特别寒酸,为了使博客的曝光读提高,所以就考虑主动让百度或者谷歌等搜索引擎收录。
首先确认站点是否已经被收录了我的博客地址为:usg-cn.web.app所以可以在百度和谷歌输入下面的格式来判断站点是否已经被收录了。
1site:usg-cn.web.app/
百度的没有,谷歌已经收录了
研究了好久,总感觉百度的搜索蜘蛛效果比谷歌的差一点,新网站谷歌很快就收录了,百度要等好久。
站点还没有被收录就继续下列步骤
安装扩展插件
站点地图是一种文件,您可以通过该文件列出您网站上的网页,从而将您网站内容的组织架构告知Google和其他搜索引擎。Googlebot等搜索引擎网页抓取工具会读取此文件,以便更加智能地抓取您的网站。
在你的hexo博客根目录,用下面2个命令分别安装谷歌、百度所对应的站点地图生成文件
12npm install hexo-generator-sitemap --savenpm install hexo-generator-baidu-sitemap --save
在博客目 ...