
图像处理
文章平均质量分 80
敢敢のwings
欢迎来到「敢敢のwings」!本人是一位前自动驾驶的具身智能行业从业人员,著有《从ROS1到ROS2无人机编程实战指南》一书。作为阿里云专家博主、华为云享专家、古月居优秀创作者及签约作者、优快云博客专家,握有多篇发明专利授权和SCI、EI论文。之前主要侧重机器人运动学、定位感知算法、深度学习研究,目前主要关注端到端、具身智能等方面,平时涉猎较广。正在努力成长并胜任架构师的角色!有商务合作或咨询需求可站内私信,或关注我团队的微信公众号【敢敢AUTOHUB】以及微信【mpl9725440】。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
CUDA入门和网络加速学习(四)
最近作者希望系统性的去学习一下CUDA加速的相关知识,正好看到深蓝学院有这。所以这里作者以此课程来作为主线来进行记录分享,方便能给CUDA网络加速学习的萌新们去提供一定的帮助。原创 2022-12-19 11:39:19 · 9386 阅读 · 0 评论 -
CUDA入门和网络加速学习(三)
最近作者希望系统性的去学习一下CUDA加速的相关知识,正好看到深蓝学院有这。所以这里作者以此课程来作为主线来进行记录分享,方便能给CUDA网络加速学习的萌新们去提供一定的帮助。原创 2022-12-19 11:37:54 · 10771 阅读 · 0 评论 -
CUDA入门和网络加速学习(二)
最近作者希望系统性的去学习一下CUDA加速的相关知识,正好看到深蓝学院有这。所以这里作者以此课程来作为主线来进行记录分享,方便能给CUDA网络加速学习的萌新们去提供一定的帮助。原创 2022-12-13 17:03:12 · 7655 阅读 · 0 评论 -
经典文献阅读之--Swin Transformer
Transfomer最近几年已经霸榜了各个领域,之前我们在《》这篇博客中对DETR这个系列进行了梳理,但是想着既然写了图像处理领域的方法介绍,正好也按照这个顺序来对另一个非常著名的Swin Transformer框架。框架相较于传统Transformer精度和速度比CNN稍差,Swin Transformer可以说是CNN模型一个非常有力的替代方案。·下面是Swin Transformer在Github上的开源路径:。原创 2022-12-13 16:56:29 · 15213 阅读 · 0 评论 -
CUDA入门和网络加速学习(一)
最近作者希望系统性的去学习一下CUDA加速的相关知识,正好看到深蓝学院有这一门课程。所以这里作者以此课程来作为主线来进行记录分享,方便能给CUDA网络加速学习的萌新们去提供一定的帮助。处理器指标一般主要分为两大类,第一块主要是延迟,另一块是吞吐量。对于CPU而言,首先是拥有较大的内存,其具有L1,L2,L3三级的存储。通过多级缓存结构提高访存速度,将经常访问的内容放在低级缓存中,不常访问的内容会被放在高级缓存中。其次是控制比较复杂(Control),控制单元中有两个非常重要的机制,分别为:分支预测机制(i原创 2022-12-06 14:30:10 · 9271 阅读 · 4 评论 -
CUDA的骨骼化加速
0. 简介CUDA作为并行加速的利器,目前已经被越来越多的利用在图像处理领域中,很多时候我们需要做耗时的图像工作时,使用GPU加速是一个很好地解决方法。充分利用CUDA架构特有的常量存储器和共享存储器对普通并行算法进行改进.讨论了如何根据程序和显卡设备的固有属性来分配线程以达到最高的GPU占用率,从而得到最优的加速效果。1. CUDA加速在基于GPU的并行系统中, CPU和GPU各司其职, CPU负责复杂的流控制等需要串行处理的部分, 而密集型数据的并行计算部分则交由GPU完成.有别于原始的串行算法,原创 2022-12-06 14:24:31 · 8421 阅读 · 0 评论 -
经典文献阅读之--CT-ICP(带有回环性质的ICP)
图 1 的上部是一幅图像,下部是一个示意图。上部的图像是地图点和一个扫描采集到的关键点。地图点是白色的,关键点是彩色的。如示意图中箭头的渐变色所示,蓝色代表时间戳最久的关键点,红色代表时间戳最新的关键点。图 1 的下部是 CT-ICP 的位姿连续性理论示意图。第一次扫描从 T0T_0T0 时刻开始到 T1T_1T1 时刻结束,每次扫描的这两个开始位姿和结束位姿都是需要估计的。 第二次扫描从 T1T_1T1 时刻开始到 T2T_2T2 时刻结束。 T1T_1T1 时刻和 T2T_2T2 时转载 2022-12-04 16:11:17 · 3337 阅读 · 0 评论 -
经典文献阅读之--PON
作为Transformer在机器视觉领域的爆火,在自动驾驶领域目前很多工作都集中在前视转鸟瞰图的方法中,这里我们来讲2020年一篇经典的论文《》,其工作被近两年的新的BEV算法进行充分的验证以及对比,从今天的眼光来看,这项工作的思想仍然是非常好的。论文通过使用Transformer算法,通过单目视觉检测俯视图下(BEV (bird eye view))车辆建立语义地图,并通过贝叶斯概率建立多帧之间的地图关系。这是这篇文章的开源网址。原创 2022-11-29 22:35:33 · 7320 阅读 · 4 评论 -
像素坐标转到世界坐标时相机坐标系中的Zc值求解
其中,Mat2(2,0)表示3×1矩阵的第三项。如果目标物体在地面则Zw=0;如果目标物体有一定高度,则Zw=实际物体高度,求出Zc后即可根据像素坐标求得世界坐标。自己项目中有涉及到图像坐标到世界坐标的转化,故这里想写出来供大家参考,如有理解有误,欢迎指正。这里的前提是世界坐标的原点在地面上。其中图像坐标到世界坐标的转化公式作者讲解的也比较清楚,但是对于Zc的值,作者并没有给出进一步讲解。其中 R,K,T均为已知值。转载 2022-11-10 13:41:25 · 2807 阅读 · 42 评论 -
经典文献阅读之--Translating Images into Maps(鸟瞰图分割)
这是一片22年的ICRA 2022杰出论文《》。来自萨里大学的研究者引入了,将自动驾驶的 2D 图像转换为鸟瞰图,使得模型的识别准确率提升了 15%。相关的代码已经开源,下面是他们开源代码。这里由于作者之前并不是搞NLP的,所以也是边学边写的,如有问题请多多提出。原创 2022-11-06 16:05:06 · 7237 阅读 · 0 评论 -
SLAM中常用的相机模型及标定工具
最近一段时间准备作多传感器的SLAM研究,第一步是要解决传感器间的联合标定。所要开展实验的机器人平台配置了相机、单线雷达和IMU,自然而然地,首先是要先确定各个传感器的内参数,然后再确定传感器之间的外参数(单线雷达和IMU的内参主要是传感器的测量噪声,这里不作展开,本文仅聚焦于相机的内参标定)。SLAM中常用的相机模型(一)Pinhole(针孔相机)最为简单也最为常见的模型是针孔相机模型,我们所使用的大部分无畸变镜头和广角镜头都可以用该模型来建模。它按照小孔成像原理:同一光线上,射影中心、物体在像平面转载 2021-07-12 14:35:52 · 3980 阅读 · 0 评论 -
Azure Kinect(K4A)人体识别跟踪进阶
近期有一个项目用到了Azure Kinect,之前Kinect 1与Kinect 2均使用过的老用户,自然不能放过这个机会。为此专门对Azure Kinect进行了学习,以下是这次自己调研摸索的一些成果Azure Kinect简介在芯片顶级会议 ISSCC 2018微软亮相自家的一百万像素的 ToF传感器,与此在论文发表三个月后,小型化的 Kinect for Azure (K4A)工业用开发套件已经备货准备向消费者售卖。司唯方作者在19年10月即对Azure Kinect DK 基本开发流程做了详细的原创 2021-04-18 20:33:41 · 6966 阅读 · 8 评论 -
基于stm32的绘图机器人设计
最近需要自己设计一个写字机器人,一开始有一些问题感谢说瞎话脸不红大佬的技术支持。最终复现了这个写字机器人基于stm32的绘图机器人设计经过一段时间的折腾,终于算是把绘图机器人弄完啦。简介这是我的大学毕业设计,平平淡淡才是真,本设计只为完成简单的绘图工作而设计简单的图像处理算法简单的机电控制算法在此感谢布雷森汉姆直线算法理解 这篇博客的博主@Vicent_Chen帮我理解了布雷森汉姆直线算法,并移植了部分代码。这里粘贴出部分论文和代码(再整理一篇markdown的论文实在是吃不消),主要部分原创 2020-08-05 16:57:36 · 6763 阅读 · 0 评论 -
Anaconda虚拟环境中,让Python3使用ROS的cv_bridge
本文借鉴文章,但是该文存在致命性问题,所以博主另开一版,来讲述如何在ubuntu16.04中安装cv_bridge。使用ROS的时候只用了C++,没有发现cv_bridge这个坑,最近增加了一个使用pytorch的节点,为此使用Anaconda配置了一个只有Python3.5的环境,运行cv_bridge时出现报错from cv_bridge.boost.cv_bridge_boost import getCvTypeImportError: dynamic module does not defi原创 2020-07-11 18:09:49 · 10572 阅读 · 33 评论 -
Ubuntu环境下ROS安装自己OPENCV版本
安装 Opencv 3.2 on Ubuntu 16.04 并创建node测试step 1: 安装一些packagesudo apt-get -y install libopencv-dev build-essential cmake git libgtk2.0-dev pkg-config python-dev python-numpy libdc1394-22 libdc1394-22-d...原创 2020-05-04 17:08:23 · 9774 阅读 · 6 评论 -
常用摄像头一些点云深度矫正ROS程序(ZED & kinect v2 & D415)
ZED摄像头获得中心点深度,未考虑RGB与深度映射(可参考下面D415)#include <iostream>#include <fstream>#include <sstream>#include <algorithm>#include <dirent.h>#include <opencv2/core/core.hp...原创 2020-04-02 23:45:29 · 6397 阅读 · 0 评论 -
从内外参到 Structure From Motion(SFM)
去年,我有幸了解到image-based modeling的相关知识。作为一个大三本科生,虽说自己此前也做过一些相关工作,但是要自己实现Structure from motion,确实是费尽了我的脑袋壳儿(3个月)。 哦对,顺带宣传一下此前自己尝试过的一个相关的内容:Sha...转载 2020-03-18 11:19:44 · 4185 阅读 · 2 评论 -
双目视觉标定,矫正,深度图(Vs +OpenCV C++ Python实现)
使用Opencv实现张正友法相机标定之前,有几个问题事先要确认一下,那就是相机为什么需要标定,标定需要的输入和输出分别是哪些?相机标定的目的:获取摄像机的内参和外参矩阵(同时也会得到每一幅标定图像的选择和平移矩阵),内参和外参系数可以对之后相机拍摄的图像就进行矫正,得到畸变相对很小的图像。相机标定的输入:标定图像上所有内角点的图像坐标,标定板图像上所有内角点的空间三维坐标(一般情况下假定图像位...转载 2020-03-17 16:17:12 · 8515 阅读 · 14 评论 -
基于opencv的csrt目标识别
本文实现了基于python的csrt方法,读取摄像头第一帧进行标注,并使用s能够实现多个目标的同时识别,然后鼠标框选,来选择目标,空格键确认。import argparseimport timeimport cv2import numpy as np# 配置参数ap = argparse.ArgumentParser() # -v videos/nascar.mp4 不要少了文件夹...原创 2020-02-23 21:42:14 · 9045 阅读 · 9 评论 -
车道识别
车道识别1.打开摄像头2.透视转换 2.1 首先对图像二值化- 2.1.1利用Sobel梯度阈值对于x、y获取二值化图像 2.2 选择感兴趣区域,并对感兴趣区域进行透视变换获取透视变换后的值3.提取的左右车道上拟合多项式 3.1 找到左右车道的质心- 3.1.1选取图像的1/4进行处理- 3.1.2通过获取左右最大最小像素点,并选取最优点 3.2 绘制mask覆盖...原创 2019-01-28 14:44:42 · 6042 阅读 · 0 评论 -
无人车行人识别---opencv
无人车行人识别---opencv无人车行人识别---opencv行人检测具有极其广泛的应用:智能辅助驾驶,智能监控,行人分析以及智能机器人等领域。从2005年以来行人检测进入了一个快速的发展阶段,但是也存在很多问题还有待解决,主要还是在性能和速度方面还不能达到一个权衡。近年,以谷歌为首的自动驾驶技术的研发正如火如荼的进行,这也迫切需要能对行人进行快速有效的检测,以保证自动驾驶期间对行人的安全不...原创 2019-01-27 15:06:20 · 6045 阅读 · 0 评论