自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(38)
  • 资源 (6)
  • 收藏
  • 关注

原创 多序列图像拼接

总的来说,步骤如下:效果如下:拼接好的图如下:依次为 特征点提取,特征点筛选,图像变换。常见的图像匹配算法有:基于opencv的sift以及SuperNet的特征点提取、特征点筛选的图像变换,注释部分为SuperNet特征点提取。文件目录保存在matchers.py图像融合保存在 blend.py文件中。main.py运行代码文本内容举例如下:

2023-12-18 15:19:54 527

原创 pytorch:nn.ModuleList和nn.Sequential、list的用法以及区别

nn.ModuleList,它是一个存储不同module,并自动将每个module的parameters添加到网络之中的容器。你可以把任意nn.Module的子类(如nn.Conv2d,nn.Linear等)加到这个list里面,方法和python自带的list一样,无非是extend,append等操作,但不同于一般的list,加入到nn.ModuleList里面的module是会自动注册到整个网络上的,同时module的parameters也会自动添加到整个网络中。

2023-05-24 16:09:56 1902

原创 tmux重启后报错 error connecting to /tmp/tmux-1001/default (No such file or directory)

并创建对应的目录,然后重新启动tmux即可,再也不用担心别人误删你的tmux文件了。以上情况往往是误删除了tmux-xxx导致的,而tmux默认放在/tmp目录。再次登陆登出就不会出现同样的问题了。打开用户目录下的 bashrc。

2023-01-30 11:41:54 3354

原创 借助vscode实现tensorboard局域网访问

项目场景:远程在同一个局域网的服务器上运行了程序,在服务器执行tensorboard命令: tensorbaord --logdir==event文件所在的目录通过局域网无法直接在web访问tensorboard的结果。问题描述尝试了添加 --host 0.0.0.0 等仍旧无法解决。如下方案均未能解决遇到的问题。解决方案:通过vscode协助完成端口自动转发,在vscode中cd到项目目录,执行同样的tensorboard命令,在调试面板的端口一栏目,会自动建立一个端口转发的隧道,(te

2022-03-31 16:54:54 1764

原创 理解几个和马尔科夫有关的概念

理解几个与马尔科夫相关的概念文章目录理解几个与马尔科夫相关的概念马儿科夫过程学生问题MDP vs MRP马儿科夫过程定义:在一个时序过程中,如果 t+1t+1t+1时刻的状态仅取决于 ttt 时刻的状态 StS_tSt​ 而与 ttt之前的任何状态都无关时,则认为 ttt 时刻的状态 StS_tSt​ 具有马尔科夫性(Markov property)。extend: 若过程中的每一个状态都...

2020-04-22 20:50:56 379

原创 linux常用命令screen

screen的作用自行百度,使用这个原因是有时候需要在服务器后天长时间运行一个程序,比如跑训练代码,每次ssh断开的时候发现挂在服务器跑的程序也自动停止了,所以需要一个能够实现断开ssh后程序可以在后天运行并且随时能够重新加载原场景的工具,也就是screen。文章目录安装screen如何在screen中把程序挂在后台运行如何从后台恢复一个screen session常用screen指令scr...

2019-10-17 11:40:40 223

原创 python学习笔记一

人生苦短,我用python希望自己具备的能力,熟悉python常用的一些深度学习等框架,做一个合格的调库君,同时也具备用C/C++手撸底层的能力文章目录1、基础数据类型1.1 list [列表] 和 tuple() 和 dic {字典}2、函数的性质函数默认参数3、类1、基础数据类型1.1 list [列表] 和 tuple() 和 dic {字典}① list操作类似数组②...

2019-08-14 08:55:54 170

原创 深度强化学习入坑指南 Updating

正式入坑了,深度强化学习,Deep Reinforcement Learning愿景是实现通用人工智能在校期间断断续续学习过一些深度学习相关的内容,强化学习相对来说薄弱一些,不管是理论还是实践,未来一年要恶补了。任务一 通读ICML DRL最新的论文,对该领域发展有个大概印象掐指一算,19年还剩下6个月,至少得每周一篇了,第一遍给自己的目标是了解为主,如果有兴趣或者用到了再做深入阅读...

2019-06-25 15:07:35 701

原创 写于毕业一年后

今天切切实实感到了自己的失败,也切切实实感受到了 什么是逆水行舟,你不学习不进步等于是 在倒退。毕业一年,在武汉的工作不尽人意,校招那年没有努力尝试去bat,现在十分后悔,好的工作,好的学校,好的竞赛和项目经历都会伴随着自己一生,机会稍纵即逝。研究生三年基本是混过去了,没有沉淀下来什么,现在想清楚了,想要从事 计算机视觉 这个行业。默默记录下自己的面试经历,希望尽快找到满意的工作!...

2019-06-24 17:19:33 617 4

转载 Ubuntu18.04下安装深度学习框架Pytorch(GPU加速)

前面我们已经在windows10环境下成功安装了CPU版本的Pytorch,推荐的是利用Anaconda安装。经过接近一天的奋战,博主成功在linux系统安装GPU加速的pytorch,博主使用的发行版是Ubuntu18.04。感谢原博主的分享,安装大同小异,原文地址:https://blog.csdn.net/wuzhiwuweisun/article/details/82753403...

2019-06-21 14:39:32 2328 1

原创 ubuntu上借助anaconda安装多个版本的pytorch

ubuntu上安装多个版本的pytorchPart I卸载anaconda(不需要可以省略这一步)1 如果要卸载annconda的话,只需要删除anaconda目录即可rm -rf /anaconda/anaconda3sudo vim ~/bashrc or sudo gedit ~/.bashrc2 删除(或者注释掉)之前加入的# added by Anaconda3 i...

2019-06-21 14:33:18 3129

原创 windows下切换账户访问共享文件夹

描述配置共享目录的过程中不小心登录了别人的账户密码并且记住后发现不知道怎么切换回来解决方案删除,然后在资源管理器中重新访问即可。其他看不到凭证,重启试试...

2019-06-17 16:07:34 7255

原创 win10下安装pytorch1.1.0

新工作准备入坑 深度学习了。装过caffe再来配置pytorch真是太轻松了!官网选择好自己电脑对应的 组件,主要是看自己电脑python环境和显卡。安装好cuda,cudnn等等。(此处省略一万个坑)公司笔记本: thinkpad T480,操作系统:win10 64位显卡:GT MX150 只有2g的显存其他:略如果电脑里已经安装好anaconda,打开an...

2019-06-12 17:27:09 6103

转载 Dll分配的内存块,exe中释放的问题

原 Dll分配的内存块,应用释放的问题 2008年03月13日 11:29:00 blz_wowar 阅读数:11038 ...

2019-05-15 14:47:12 612

原创 点云拟合—平面拟合

平面方程:Ax+By+Cz+D=0方程本身不复杂,原理推导别人已经写得很明白了,我这里只贴地址了,不重复推导。拟合方法一——最小二乘:https://blog.csdn.net/konglingshneg/article/details/82585868构建系数矩阵后,利用最小二乘即可 求解:Ax=bx=(ATA)-1ATb% matlabinv(A'*A)*A'*b...

2019-05-13 16:44:16 20700 5

原创 厚积薄发—给定一个数组找第三个最大的数

基本题型:给定一个长度大于3的数组,找出其中第三个最大的数先讨论在实际应用遇到,一般前面三个最大的不会有重复。int findThirdBiggest(vector<vector<Point>>contours) { double biggest, bigger, big; biggest = bigger = big = 0.0; int biggestI...

2019-05-08 17:03:34 1384

转载 AlphaGo Zero算法简介

      AlphaGo Zero 引起巨大社会轰动  只告诉机器围棋的基本规则,但是不告诉它人类摸索了上千年才总结出来的定式等围棋战术,让机器完全依靠自学,打败人类。这个题目不仅新鲜,而且热辣。  上周 DeepMind AlphaGo 人工智能围棋团队的一篇...

2019-05-04 23:05:47 3576

原创 实用C++ 弹窗打开指定的文件夹,遍历选定文件夹下所有指定类型的文件

① 弹窗选中文件件,获取文件夹 路径 TCHAR szBuffer[MAX_PATH] = { 0 }; BROWSEINFO bi; ZeroMemory(&bi, sizeof(BROWSEINFO)); bi.hwndOwner = NULL; bi.pszDisplayName = szBuffer; bi.lpszTitle = _T("从下面选文件夹目录:")...

2019-03-29 15:35:57 985

原创 C++检测是否ip能够ping通

最近做项目,相机和plc的连接有时候会突然中断,搜寻了下,找到一个可用的检查 某ip是否可以连通的函数。需要调用icmp.dllping.hicmp.dll下载点这里#pragma once#include &lt;Winsock2.h&gt;#include "iphlpapi.h" #include&lt;tchar.h&gt;#pragma comment(lib,"...

2019-03-08 10:11:22 4412 1

原创 C\C++ DLL调用(dll函数重载未解决)

1、首先,建立一个项目,注意要勾选 动态链接库(DLL)。fun.h, 定义需要给外部调用的函数#pragma once#include<string>#include<iostream>#define FUN_API _declspec(dllexport)EXTERN_C FUN_API int fun1(int a, int &b, ...

2019-03-05 10:41:51 1446 3

转载 跨目录调用 调用dll LoadLibrary返回126

LoadLibrary返回126(转) 原文标题:loadlibrary加载三方dll失败问题。 前几天,在联网测试三方的dll,但是出现dll放到exe目录下面可以正常加载,如果单独放一个目录却出现126错误代码,找不到指定的模块。 由...

2019-02-28 17:59:25 633

原创 点云拟合—圆柱面 非线性最小二乘实现

最近项目需要 这方面的工作,于是开始研究这个了;圆柱几何特征:圆柱面上的点到其轴线的距离恒等于半径圆柱的方程:首先是 PCL库自带的圆柱模型拟合,由于在查找最佳圆柱面的过程中会过滤很多点,因此考虑利用最小二乘的模型来拟合最接近实际点云的一个圆柱面,code如下,只是简单的调库,原理没仔细看:#include "pch.h"#include <iostream&gt...

2019-01-31 10:09:06 17859 38

原创 自启动+开机运行指定exe

方法 11、将需要开机自启动的 exe 或者程序、脚本等 放置到该文件夹下,即可设置好在每次开机时自启动 exeC:\Users\ [自定义的用户名] \AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup2、设置 机器开机自启动,需要进入 bios。一般来说 按 delete 或者 F12。不同机器情况...

2019-01-16 10:28:57 2226

原创 手眼标定(eye in hand),求解 AX=XB 小记

用于 EYE IN HAND理论结束,代码如下:#include &lt;vector&gt;#include &lt;opencv2/opencv.hpp&gt;using namespace std;vector&lt;cv::Mat&gt; RT_Tcpij; //movement of Tcp coordinatesvector&lt;cv::Mat&gt; R...

2019-01-08 16:41:43 7385 3

原创 配置PCL过程中提示 path too long installer unable to modify path解决

最近学习点云分割,第一步,配置 PCL库。环境是 vs2017, 64位,PCL 18.1在安装allinone的过程中,遇到了 path too long installer unable to modify path报错的问题,点击确定后,查看环境变量,确实没有配置pcl和opennl的环境变量,这个时候也不要慌,pcl已经安装就位了,只是环境变量没有自动配置好。接下来我们需要做的就是...

2019-01-03 11:46:07 13441 8

原创 ubuntu16.04 + ROS +Moveit +Ompl

系统:ubuntu16.04 安装 OMPL按照官网 一步步来:1、首先进入OMPL的官网http://ompl.kavrakilab.org/ 2、点击Getting Started下的install OMPL,进入下边的页面点击“Download the OMPL installation script”,会下载一个名为“install-ompl-ubuntu.sh”的...

2018-11-27 19:56:53 2158 2

原创 计算机视觉基础---画出三维空间运动轨迹以及位姿

最近项目遇到路径规划的工作,每次出来路径苦于没有直观的表示方法,于是重新温习了matlab自己编写了这么一个函数,来实现 对物体三维运动过程中的展示。已有:物体在轨迹一些点的 三维坐标和姿态(这里用欧拉角表示的);效果:在matlab三维绘图中 画出三维点的位置和 物体处于该位置处的姿态;pathPoints.mpick=[285.601624 273.480804 216.15...

2018-09-10 17:10:15 8513 2

原创 计算机视觉基础---旋转矩阵转欧拉角

旋转矩阵转欧拉角。原理很简单,代码实现也很容易。网上查了一些 ,公式好多写的都是错的坐标系之间的旋转,可以通过三个角度推导出旋转矩阵,也就是说 3*3大小的旋转矩阵 实际自由度为3 #include&lt;stdio.h&gt;#include&lt;math.h&gt;typedef struct { int row, col; float **element;...

2018-08-31 20:29:14 2052 1

原创 厚积薄发—和定值,求乘积最小的组合

Q:输入一个递增排序的数组和一个数字S,在数组中查找两个数,是的他们的和正好是S,如果有多对数字的和等于S,输出两个数的乘积最小的。思路:1,因为数组满足递增,从首尾开始遍历 i,j,如果ai+aj=S,就是答案 (相差越大,乘积越小,所以第一个遇到就是乘积最小的)2,如果 ai+aj>S, aj肯定不是答案之一,j-- (aj后面的不可能,和只会更大)3,如果ai+a...

2018-08-16 11:09:55 1035

原创 opencv/C++基础知识——

Vec3b color8U 类型的 RGB 彩色图像可以使用 &lt;Vec3b&gt;,3 通道 float 类型的矩阵可以使用 &lt;Vec3f&gt;。对于 Vec 对象,可以使用[]符号如操作数组般读写其元素,如:Vec3b color; //用 color 变量描述一种 RGB 颜色。color[0]=255; //0通道的B 分量color[1]=0; //1通道的G 分...

2018-08-15 17:56:23 621

转载 C++基础——vector类用法总结

一、C++ vector类为内置数组提供了一种替代表示,与string类一样 vector 类是随标准 C++引入的标准库的一部分,使用时需包含头文件:#include &lt;vector&gt;二、C++ vector类有两种使用方式:第一种:STL方式vector&lt; st...

2018-08-14 18:05:04 15010 2

转载 Opencv图像识别从零到精通----DFT离散傅里叶变换

&nbsp; &nbsp; &nbsp; &nbsp;这篇就是图像的时域到频域的开始,也是信号处理中比较常见的傅立叶变换。一、傅立叶图像&nbsp; 对一张图像使用傅立叶变换就是将它分解成正弦和余弦两部分。也就是将图像从空间域(spatial domain)转换到频域(frequency doma...

2018-08-14 17:03:49 750

转载 频率域滤波器

一、简介我们知道,在一幅图像中,其低频成分对应者图像变化缓慢的部分,对应着图像大致的相貌和轮廓。而其高频成分则对应着图像变化剧烈的部分,对应着图像的细节(图像的噪声也属于高频成分)。低频滤波器,顾名思义,就是过滤掉或者大幅度衰减图像的高频成分,让图像的低频成分通过。低频滤波...

2018-08-13 19:51:15 2568 1

转载 离散傅里叶变换-DFT(FFT基础)

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 本文是从最基础的知识开始讲解,力求用最通俗易懂的文字将问题将的通俗易懂,大神勿喷,多多指教啊,虽然说是从零学习FFT,但是基本的数学知识还是要有的,sin,cos,等。&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;...

2018-08-13 11:50:03 198114 26

转载 opencv 图像读取显示和像素操作

从今天起,开始从头系统学习下opencv,下面记录下图像的基本操作:1. 图像的读取和显示Mat image = imread(imagePath, 1); 第二个参数表示图片读入的方式(flags可以缺省,缺省时flags=1,表示以彩色图片方式读入图片) flags&amp;gt;0时表示以彩色方式读入图片 ...

2018-08-10 14:52:26 1251

原创 准备写一个 相机标定-矫正-校正 的完整流程

首先你得有一张标定纸张,matlab下 J = (checkerboard(1200,12,16)&gt;0.5);write(J,'d:\checkerboard.bmp')figure, imshow(J)checkerboard 参数依次为 dpi,行的一半,列的一半。使用write可以保证输出图像的分辨率,不然直接在figure视图中另存为的话 会产生不清晰的图片。...

2018-08-08 18:32:28 1509

原创 厚积薄发—计算斐波那契数列

分享一个刷题时候遇到的有意思的答案原题要求计算斐波那契数列 某一项的值。① 第一种是递归,这个大家都应该知道(有空我再补充)② 看到网友 给出了一种巧妙的解法,最直接的区别是 只需要定义两个变量即可 实现求解,算法复杂度分析我有空再补充。// test.cpp: 定义控制台应用程序的入口点。//#include "stdafx.h"#include<iostr...

2018-08-03 10:45:34 256

原创 简单的实现 相片去畸变,调用opencv读写图像,其他库函数不用

刚入职,leader给我 一些入门级的事情来做,帮助理解原理,以后的目标是 能够完全读懂现有的图像处理的库,并能够根据实际进行改进和优化。利用matlab单相机标定获得了 相机的 内参矩阵和畸变函数,然后进行 去畸变。文字流程如下(注意几次坐标系转换):(1),将图像的像素坐标系通过内参矩阵转换到相机坐标系:(2),在相机坐标系下进行去畸变操作。(3),去畸变操作结束后,将相机...

2018-08-01 16:58:37 1449 3

eye in hand 手眼标定算法方案

经典手眼标定(eye in hand)方案设计 每组手眼运动需要固定棋盘格是我位置,每次手眼运行前后需要标定相机外参。 需要机器人控制上能够直接读取工具中心点的位姿。

2019-01-08

原理详解_三点解算两个坐标系之间的旋转矩阵和平移向量

已知不共线的三点在两个坐标系下面的坐标,求解 两个坐标系的转换参数,精度可满足一般程度上的定位需求。步骤清楚,可直接上手code

2018-11-29

三点解算两个坐标系之间的旋转矩阵和平移向量

根据 三点在两个坐标系下的坐标,建立两个坐标系之间的旋转矩阵R和平移向量T,适用场景:求 世界坐标系到 相机坐标系的转换关系。以其中一点建立 世界坐标系,该点在相机坐标系中的坐标是 世界坐标系到坐标系的平移向量(这些描述都是以相机坐标系为基准)

2018-08-29

振纹检测(缺陷检测)

opencv3.4+vs2017 64位环境,测试图片一并打包,简单实现 工业零件振纹检测,振纹实际场景 情况比较多,这里只实现了 对颜色较深振纹的检测,通过 傅里叶变换,频率域滤波以及 形态学图像分割 等技术,欢迎大家进一步讨论

2018-08-13

双目立体校正

opencv 3.3+vs2017环境。标定,去畸变以及双目立体校正,opencv源码,直接运行,图片等配置文件均打包上传

2018-08-02

链表C++实现

链表C++实现,增加,删除,逆序,获取链表长度,清空链表,定位链表等等

2018-07-05

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除