- 博客(90)
- 收藏
- 关注
原创 Win10安装Ubuntu16.04 双系统(识别不到Intel WIFI6 AX201wifi网卡,有线连接iPhone分享网络但仍无法上网,等问题解决)
问题描述: Win10单硬盘安装Ubunt16.04双系统, 安装并配置完环境后,识别不到wifi网卡, 并且有线连接iPhone分享网络,仍无法上网等问题,解决方法如下1.Win10单双硬盘安装Ubuntu16.04.7方法:在这方面没有遇到很大的问题,参考连接如下:https://www.cnblogs.com/masbay/p/10844857.htmlhttps://blog.csdn.net/xrinosvip/article/details/80428133https://www.
2021-09-21 00:08:38
2069
原创 ROS 学习踩坑笔记6 - ROS Gazebo 仿真深度相机时, 在RVIZ查看深度图时, 深度图像一直闪烁
存在问题: ROS Gazebo 仿真深度相机时, 在RVIZ查看深度图时, 深度图像一直闪烁-> 解决方法:首先需要检查相机的xacro/srdf文件中, 深度图的Topic和rgb相机的发布topic是否一致, 若一致的话,会造成rgb 图像信息和depth图像信息交替发布在同一个topic上, 导致查看depth图片的石斛一直闪烁!将RGB相机发布的topic和depth相机发布的topic修改为不同topic即可解决此问题. 如下图所示:...
2021-09-14 21:00:36
1782
原创 ROS 学习踩坑笔记5-Intel D435相机不发布点云,在RVIZ中,不显示点云(wants topic /image/compressed to have datatype/md5sum)
存在问题: Intel RealSense D435相机,运行rs_camera.launch驱动后,在RVIZ中不显示点云.->若强行添加PointCloud2的插件,并且订阅相机发布的Depth的Topic, 在Console中会报错:[ERROR] 1260927377.348922000: Received error message in header for connection to [TCPROS connection to [10.0.0.136:39531 on so...
2021-07-02 21:00:28
3569
原创 PCL学习记录-12-Registration点云配准-1 (ICP,NDT方法)
本博文主要介绍关于点云配准的ICP和NDT两种方法的实现代码,并贴出具有参考意义的博文地址.关于点云配准的较好的参考博客 :http://robot.czxy.com/docs/pcl/chapter03/registration/#ndthttps://blog.csdn.net/sru_alo/article/details/88285135https://blog.csdn.net/yuxuan20062007/article/details/80914102一. ICP 点..
2021-03-27 08:58:32
657
原创 OpenCV-学习历程33 - 基于距离变换与分水岭的图像分割
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。1.距离变换和分水岭分割原理2.距离变换和分水岭分割--处理流程2.代码实现#include <opencv2/opencv.hpp>#include <iostream>#include <math.h>using namespace ...
2021-03-16 23:03:31
185
原创 OpenCV-学习历程32 - 点多边形 (判断点是否在多边形内部/边缘/外部)
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。一.原理:二.代码:#include <opencv2/opencv.hpp>#include <iostream>#include <math.h>using namespace std;using namespace cv;int main(int argc, char** argv) { ...
2021-03-16 09:15:16
414
原创 OpenCV-学习历程31 - 图像矩(Image Moments)(计算图像中某一特征进行度量-中心位置,直径,圆心等)
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。一.原理:二.代码#include <opencv2/opencv.hpp>#include <iostream>#include <math.h>using namespace std;using namespace cv;Mat src, gray_src;int threshold_va...
2021-03-16 08:44:31
500
原创 OpenCV-学习历程30 - 轮廓周围绘制矩形和圆形框 (主要关注:如何减少多边形顶点数的API)
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。一.原理:二.代码展示:#include <opencv2/opencv.hpp>#include <iostream>#include <math.h>using namespace std;using namespace cv;Mat src, gray_src, drawImg;i...
2021-03-16 07:43:08
228
原创 OpenCV-学习历程29 -凸包 Convex Hull
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。一. 凸包原理(Convex Hull):-> OpenCV 已经封装了凸包程序,直接调用即可。二.代码实现#include <opencv2/opencv.hpp>#include <iostream>#include <math.h>using namespace std;using n...
2021-03-16 07:05:54
193
原创 OpenCV-学习历程28 - 轮廓发现(find contour in your image)
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。一. 轮廓发现原理:二.代码展示#include <opencv2/opencv.hpp>#include <iostream>#include <math.h>using namespace std;using namespace cv;/*This project is to do the ..
2021-03-16 03:54:26
356
原创 OpenCV-学习历程27 - 模板匹配(Template Match)
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。一.模板匹配原理: (实际上就是使用模板图片,在目标图像中,寻找与模板图片最为相似的地方)二. 模板匹配相关API(建议使用归一化的方法)二. 代码实现#include <opencv2/opencv.hpp>#include <iostream>#include <math.h...
2021-03-16 02:39:43
497
原创 OpenCV-学习历程26- 直方图反向投影
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。注: 直方图反向投影暂时不清楚作用,待以后用到这个内容再进行完善。一.原理:二.代码实现:#include <opencv2/opencv.hpp>#include <iostream>#include <math.h>using namespace std;using namespac...
2021-03-16 00:44:15
124
原创 OpenCV-学习历程25- 直方图比较(衡量两个图像/或者图像中的某个区域的相似情况)
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。一. 直方图比较方法
2021-03-13 08:35:00
616
原创 OpenCV-学习历程24- 直方图计算(直方图概念等)
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。一.直方图概念二.直方图主要API的内容三.代码测试#include <opencv2/opencv.hpp>#include <iostream>using namespace std;using namespace cv;//测试使用OpenCV自带的HoughLineP提取图像边缘...
2021-02-27 09:11:01
150
原创 OpenCV-学习历程23- 直方图1- Histogram(什么是直方图?直方图均衡化equalHist-提高对比度,显示更多细节)
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。一.什么是直方图(不同数据出现的频次):二.直方图均衡化(提高对比度,提高细节):三.代码实现:#include <opencv2/opencv.hpp>#include <iostream>using namespace std;using namespace cv;//测试使用Op...
2021-02-27 07:19:10
255
原创 OpenCV-学习历程22-像素重映射(cv::remap)
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。一. 像素重映射(把像素按照一定的规则重新排列):二. 像素重映射(API):三. 代码实现:#include <opencv2/opencv.hpp>#include <iostream>using namespace std;using namespace cv;//测试使用OpenCV自带的H...
2021-02-27 05:12:58
373
原创 OpenCV-学习历程21- 霍夫变换2-圆检测(HoughCircles)
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。一.霍夫圆检测原理:二.霍夫圆检测API: 三.代码实现:#include <opencv2/opencv.hpp>#include <iostream>using namespace std;using namespace cv;//测试使用OpenCV自...
2021-02-27 04:00:42
386
原创 OpenCV-学习历程20- 霍夫变换1-直线检测(HoughLineP Transform)
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。一.霍夫直线变换介绍:一.霍夫直线变换介绍:...
2021-02-27 00:46:40
409
原创 OpenCV-学习历程19- Canny边缘检测(Canny算法介绍+API)
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。一.Canny边缘检测算法介绍: 注意: 以下5步为Canny边缘检测的理论实现过程,在OpenCV中,这5步已经被封装成了一个函数,可以直接调用。 第一部分的内容只做原理解释。二.Canny边缘检测API:三.Canny边缘检测代码实现:#include <opencv...
2021-02-27 00:40:41
485
原创 OpenCV-学习历程18- Laplacian算子(通过二阶导求图像边缘)
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。重要!!! Sobel算子是通过一阶导数求解边沿,laplace是通过二阶导求边缘一. Laplacian算子理论(知道原理,知道使用场景即可):二. Laplacian算子的API及流程:三. 重要!!使用Laplacian算子的过程,代码演示#include <opencv2/opencv.hpp>#include <...
2021-02-26 10:37:42
473
原创 OpenCV-学习历程17- Sobel算子(应用及边缘提取)
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。一. 卷积应用-图像边缘提取:如下图:图像内部的边缘主要是强度相差比较大的地方,在图像边缘处,导数能够取到最大。 二. Sobel算子的API:三. 重要!!使用Sobel算子的过程,代码演示 高斯平滑降噪->图片转灰度->求XY方向的梯...
2021-02-26 09:20:56
567
原创 OpenCV-学习历程16- 边缘处理(卷积边缘处理-处理卷积运算后,没有被处理到的图片边缘像素)(API名称为:copyMakerBorder)
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。基于“学习历程15”,在使用Filter2D与卷积算子对图片进行卷积处理时,图片边缘的像素无法被处理到,本学习历程就是要处理这些没有被处理到的图片边缘像素。原因是:边缘像素,没有与卷积核重合 ...
2021-02-26 06:01:38
747
原创 OpenCV-学习历程15- 自定义线性滤波(包含卷积的概念)(Robert+Sobel+laplace算子+自定义模糊算子)
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。一. 卷积概念: 卷积核(也称为卷积算子)的概念: 卷积核Kernel实际上就是一个固定大小的矩阵数组,中心称为锚点; 一般卷积核的维数是单数(一般是3x3或者5x5 的矩阵数组)。 图像卷积处理: 就是将卷积核的锚点(中心点),与二维图像的每一个像素重合,然后卷积核的每一个数...
2021-02-26 04:50:56
336
原创 OpenCV-学习历程14- 基本阈值操作 (设置限制值,操作不同深度的像素)
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。一. 图像阈值 1 定义: 其实就是将图像进行分割的标尺。 2 阈值类型 1(阈值二值化/反二值化) 这个阈值类型: 大于某个值,设为0或1; 小于的设为相反的值。 ...
2021-02-22 10:19:31
660
原创 OpenCV-学习历程13- 图像上采样及降采样+图像金字塔概念+DOG
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。一. 图像金字塔概念 概念如下图:最重要的性质是:通过图像金字塔进行上采样或者降采样,图像的特征信息不变。 图像金字塔种类: 包括高斯金字塔(降采样用)和拉普拉斯金字塔(根据图片上层降采样图片,重建一张图片)。 ...
2021-02-22 08:42:33
181
原创 OpenCV-学习历程12- 形态学操作应用(提取水平与垂直线)
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。一. 原理方法二. 代码实现#include <opencv2/opencv.hpp>#include <iostream>using namespace std;using namespace cv;/************************************ 形态...
2021-02-22 05:32:20
196
原创 OpenCV-学习历程10/11- 形态学操作(开操作/闭操作/形态学梯度/顶帽/黑帽)(!主要是用于二值化图像进行处理)
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。注意! 形态学操作虽然是由简单的膨胀和腐蚀组合而成,实际上OPENCV有统一的形态学操作API可以使用 。 ->形态学操作调用这个API就好一.开操作(先腐蚀后膨胀) 作用:去除一些小的缺陷。 原理:首先用腐蚀去掉一些小的缺陷对象,然后使用膨胀,将被腐蚀掉的有用信息复原。 ...
2021-02-22 03:46:02
406
原创 OpenCV-学习历程9- 膨胀与腐蚀(Dilate/erosion)(+createTrackbar 交互拖块)
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。一.膨胀和腐蚀的原理 (图像的形态学操作) 二.相关API 2.1 (形态学元素,膨胀+腐蚀) 2.2 (动态调整结构元素的大小)三.代码示例#inc...
2021-02-22 00:29:53
211
原创 OpenCV-学习历程9- 图像模糊2(中值滤波+双边滤波)
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。一.中值(均值)滤波原理 (消除椒盐噪声) 1.中值滤波:对椒盐噪声有比较好的抑制作用(因为椒盐噪声的灰度相比其他的像素点,差别非常大) 2.算法概述: 用一个3x3的mask,依次遍历图像中每个像素点; 将这个中心像素点和周围共9个像素点强度进行排序,将这9个像素点的中值,放在当...
2021-02-21 23:28:49
291
原创 OpenCV-学习历程8- 图像模糊1(基础知识,中值模糊,高斯模糊)
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。一.图像模糊原理 模糊功能:消除噪声,取边缘之前使用。 公式内: f()原图像,h()卷积核/掩膜 ...
2021-02-21 21:51:06
255
原创 OpenCV-学习历程7- 在图片上绘制形状与文字(cv::Point/cv::Scalar) (圆,矩形,直线,随机直线,文字)
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。一.OpenCV 中(cv::Point/cv::Scalar)API ...
2021-02-21 09:44:25
261
原创 OpenCV-学习历程6- 图像亮度和对比度(理论+代码)
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。一.图像亮度和对比度原理 图像变换包括像素变换和邻域变换:像素变换: 对像素点进行操作,调整亮度和对比度就是对点进行操作。 邻域操作: 对图像进行整体操作,例如求卷积或者求掩膜(mask计算)。 下图中包含了调整像素亮度的公式: f(i,j)代表像素点,α代表增益(最终结果越靠近255越亮); !α->对比度增益; β...
2021-02-21 07:52:21
470
原创 OpenCV-学习历程5- 线性混合操作(将两张图片融合在一起)(理论+代码)
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。一.线性组合原理线性混合就是,对两幅图像 f0(x)和 f1(x)或两段视频(同样为(f0(x)和f1(x))产生时间上的画面叠化(cross-dissolve)效果,就像幻灯片放映和电影制作中的那样。函数表示为。 不同的像素采用不同的权重(在API中,alpha和beta对应着两幅图像的权重,gamma是校验值) Saturate这个函数,确保图像的灰度范围不会超过0..
2021-02-21 06:47:11
682
原创 OpenCV-学习历程4- 读取图像/读取像素/修改像素值方法(包含灰度+rgb图像像素处理方式)
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。#include <opencv2/opencv.hpp>#include <iostream>using namespace std;using namespace cv;int main(int argc, char**argv) { //Step1 读取图片 Mat src; src = imread("sample.jpg").
2021-02-21 04:43:31
1334
原创 OpenCV-学习历程3-Mat对象及相关方法 (如何初始化图像,拷贝图像,获取像素强度值等)
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。Mat类型的使用方法#include <opencv2/opencv.hpp>#include <iostream>using namespace std;using namespace cv;int main(int argc, char**argv) { //Mat1. 创建Mat对象,并且从文件中读取图片显示 Mat sr..
2021-02-21 03:22:46
508
原创 OpenCV-学习历程2-矩阵掩膜操作(mask)+Kernal+filter2D+getTickCount (时间统计)
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。#include <opencv2/opencv.hpp>#include <iostream>#include <math.h>using namespace cv;int main(int argc, char** argv) { //Step1 读取图片 Mat src, dst; src = imread("..
2021-02-20 23:50:19
202
原创 OpenCV-学习历程1-图片文件-加载,修改,保存
OPENCV系列博客主要记录自己学习OPENCV的历程,以及存储已经实现的代码,以备后续回顾使用,代码中包含了主要的备注。
2021-02-20 21:59:48
115
原创 ROS 学习踩坑笔记10-RViz-Marker标记(rviz_visual_tools)总结
在ROS RViz 环境中,可以使用一些可视化插件来显示坐标点信息,文字信息,以及机器人移动方向,速度等信息,RVIZ中能够使用的Marker主要有两种:1. RVIZ标准marker软件包(功能简单,使用也相对容易)2. 第三方Marker软件包(功能全面,使用较为复杂)以下大体上介绍两个软件包的内容,以及官方说明链接.*掌握了以下两种方式,基本上可以显示项目中遇到的各种信息.1. ROS Rviz 官方Marker软件包:(http://wiki.ros.org/rviz/D.
2021-02-19 22:33:07
4033
原创 ROS 学习踩坑笔记9-PCD文件自动去除NAN点
原博客链接为:https://www.cnblogs.com/li-yao7758258/p/6519830.html存在问题:编译过后,发现输入命令行无法执行删除nan点的功能.解决方法:命令行指令为 : 需要输入输入点云名称+输出点云文件名称!!例如: /02-PCD_rm_nan input_cloud.pcd output_cloud.pcd具体代码为:#include <pcl/io/pcd_io.h>#include <pcl/fil...
2021-01-19 08:48:17
839
2
原创 ROS 学习踩坑笔记8-rviz marker /markerArray 显示 及删除问题
RVIZ提供了两种官方支持的RVIZ可视化插件,分别是rviz_marker和rviz_marker_array, 作用是显示一些圆形,圆柱等可视化marker,前者是一次显示一个marker对象,后者是一次显示一系列的marker对象。具体使用方法可以见ROS tutorial:https://wiki.ros.org/rviz/Tutorials/Markers%3A%20Points%20and%20Lines问题描述: 在添加了Marker之后,设置marker的 duration_..
2021-01-15 21:01:37
11687
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人