- 博客(49)
- 收藏
- 关注
原创 基于圆内接三角形的快速高精圆检测
图像圆检测@TOC从图像中检测识别或者定位圆形几何基元在计算机视觉和机器人领域有着非常广泛的应用。传统的圆检测算法多数是基于Hough Transform (HT), 如OpenCV内嵌的圆检测。但是,现实测试发现OpenCV提供的算法较难满足实际需求, 精度也不够高。 本文介绍的圆检测算法不同于HT采用投票的机制 (依赖离散的像素),而是基于连续圆弧段。相较于HT, 此算法精度更高,检测速度也更快。
2022-02-13 01:45:53 2535 9
原创 MATLAB 配置 MinGW64 进行 C 语言编译
适用 MATLAB 版本R2017b 以及之后的,我的是R2019a。下载链接:下载看下载评论区很多人说无法下载,那我提供一个免费下载好了:链接:https://pan.baidu.com/s/1kZ5Z-frOhkfwVT8JCJcamA提取码:2db6注意事项直接下载到C盘根目录:C:\mingw-64不要用:C:\Program Files\mingw-64。安装将下载好的文件拖拽到打开的MATLAB命令行,一键安装就好啦。如果中间出现无法连接服务器之类的错误,可以尝试把杀毒
2020-06-05 10:21:37 681
原创 MATLAB批量 修改图像尺寸 修改文件名 移动文件
MATLAB 批量 修改图像尺寸 修改文件名 移动文件记录一下常用的 MATLAB 批处理操作。%--->This file contains three sub batch-programes<---% 1. resize images;% 2. rename files;% 3. copy files to another directory.%---> Created environment: Matlab R2014b <---src_dir='D:\det
2020-05-13 18:00:38 431
原创 Matlab 绘制不同颜色柱形图 添加文字 并保存为pdf格式(减少空白边界)
问题在论文中插图时,一般要求是pdf或eps格式, 对于算法的对比,我们可以用柱形图显示。本文记录Matlab绘制不同颜色柱形图并导出为pdf格式的图片。2. 代码%data: 4组,每组5个数据y=[0.34 0.32 0.34 0.47 0.51; 0.44 0.50 0.53 0.56 0.61; 0.62 0.52 0.56 0.92 0.94; 0.46...
2020-02-18 22:37:29 2451
翻译 高斯马尔科夫定理
一. 高斯马尔科夫定理是什么高斯马尔科夫定理说:对于线性回归模型,在某些约束条件下,由最小二乘法得到的估计量(估计子),即线性回归模型的系数,是最优的线性无偏估计子。也就是说高马解决的问题是线性回归模型,他的作用是给出线性模型的系数估计。1. 线性回归模型: ...
2019-09-16 08:47:20 23717 2
原创 matlab 图像上画椭圆 保持原来图像分辨率
一. 问题在真实图像上画椭圆后,保存的图像要不有空白边界要不分辨率大小和原图不一样。二. 解决方法利用 figure 的 border 属性Im2=imread('image\egg.jpg');figureimshow(Im2,'border','tight');%figure 四周无空白hold on%plot多个椭圆for i=1:size(EllParRec,1...
2019-04-11 11:05:25 1661 2
原创 利用matlab中rand函数生成圆和球中均匀分布的数据点
一. rand 函数rand函数是生成(0,1)之间均匀分布的数据点。rand(m,n): 生成m行n列的在(0,1)之间的数据点,这些数据服从均匀分布。例如生成1x2的服从(0,1)之间均匀分布的数据点:>> rand(1,2)ans = 0.8147 0.9058二. 生成半径为r的圆内均匀分布的数据点%生成圆中均匀分布的随机数据点...
2019-04-03 08:11:47 15912 10
翻译 latex 编译 程序代码中的右下划线
一. 问题背景用latex编辑带有算法的文档时,程序中命名时经常含有下划线,如 MPI_Scatter,如何实现这种效果呢?二. 解决方案方法1. 宏定义\catcode`\_=\active\def_{\_}将以上两句命令放在文档前面,这样在文中就可以像程序中敲下划线一样来敲latex文档。如 MPI_Scatter 在latex文档中就直接写成MPI_Scatte...
2018-12-15 22:40:58 3006
原创 matlab R2016a 未找到支持的编译器或SDK 配置MinGW-w64 C/C++ 编译器
系统环境:win7(64bit)+R2016a1. 错误描述:在使用matlab编译C程序时,需要用mex来编译写好的C程序,这样才能在matlab中调用,其实编译好的C程序就像动态链接库。 但是在命令行输入mex -setup 后呈现如下错误:>>...
2018-11-29 08:42:25 5970 2
转载 linux 编写Makefile文件
本文转自:https://www.cnblogs.com/mfryf/p/3305778.html这篇文章中有对makefile文件编写的详细介绍,包括原理和操作。推荐给大家~
2018-11-23 10:30:12 438
原创 Matlab 读取txt数据 画图&拟合&解释
一. 背景 实际工作中,在得到一堆数据点后,常要寻求数据点之间的关系。一般做法是先画出图来,然后用多项式或其他函数来拟合,最后分析下拟合的误差,看拟合结果是否可靠。二. 实例 数据: data2.txt 步骤: 1. 点击matlab主页上的 “导入数据”选项,将txt导入matlab。 ...
2018-10-28 22:46:03 19705
原创 数据结构之 链表就地反转
一. 链表 链表是一种基础数据结构,是由一个个结点串接而成。链表克服了数组需要预先知道数据大小的特点,充分利用计算机内存实现灵活的内存动态管理。链表和数组是表示线性表的两种常见数据结构。链表分:单项链表、双向链表和循环链表。二. 背景描述 给定一单链表Linklist, 设计函数Reverse将链表Linklist就地逆转,即将第一个元素转为最后一个元素,第二个...
2018-10-14 22:50:02 1686
原创 linux 并行计算之 openmp初探
一:简介 OpenMP(Open Multi-Processing)是一种共享内存编程模式,多线程并行应用程序界面,使用C,C++和Fortran语言。由两种形式实现并行功能:编译指导语句和运行时库函数。编译指导语句告诉程序何时开始并行,库函数用来设置线程数及实现其它并行功能。 ...
2018-10-05 15:47:15 7718
原创 Python 之 K-means 算法
一:背景引入 机器学习领域需要对数据进行操作,其中有两个常见的操作:聚类和分类。聚类属于物以类聚,寻求数据内部的联系,原始的数据是没有任何标记的,仅仅是一堆数据,名曰无监督学习,就是无标签,比如k-means 算法;而分类属于近朱者赤,数据是有标记的,名曰有监督学习,比如KNN算法。正常的步骤是先聚类再分类。二:k-means 原理 给定样本数据集 , "k均值"...
2018-09-28 22:12:05 826
原创 MPI 之 点对点通信的一个实例
目标:通过MPI 实现100次 点对点通信,并计算平均每次的通信时间。代码如下:/**点对点通信100次,计算平均通信时间,并观察传输数据量大小和传输时间关系 数据量变化采用动态内存方式 从4kb增加到400M,每次增大400kb**/#include<stdio.h>//标准输入输出头文件#include<stdlib.h>//标准库#incl...
2018-09-27 09:17:56 2594
原创 MPI 之 按进程打印 “Hello World”
先来看下mpi-3.2.1目录下examples中的hellow.c的代码(鼠标右键用gedit打开):#include <stdio.h>#include "mpi.h"//调用mpi接口int main( int argc, char *argv[] ){ int rank; int size; MPI_Init( 0, 0 );//...
2018-09-26 22:19:16 3265
原创 Linux下MPI 之安装配置,及编译运行
一. MPI的安装1. 下载MPI 安装包到官网:http://www.mpich.org/downloads/ 下载mpi-3.2.1版本的MPI 包。2. 解压安装包到下载安装包的目录下,可以看到有mpi-3.2.1.tar.gz的压缩包,在终端运行如下命令:tar -zxvf mpich-3.2.1.tar.gz可以解压安装包。若无法解压,尝试 tar -xvf mp...
2018-09-26 21:27:38 28504 12
转载 Python之sort和sorted方法
这篇文章写得很详尽,推荐大家学习。原文链接:https://www.cnblogs.com/sysu-blackbear/p/3283993.html我们需要对List、Dict进行排序,Python提供了两个方法对给定的List L进行排序,方法1.用List的成员函数sort进行排序,在本地进行排序,不返回副本方法2.用built-in函数sorted进行排序(从2.4开始),返...
2018-09-19 22:28:22 155
原创 Pytorch 之修改Tensor部分值
一:背景引入对于一张图片,怎样修改局部像素值?二:利用Tensor方法比如输入全零tensor,可认为为黑色图片>>> n=torch.FloatTensor(3,3,4).fill_(0)>>> n tensor([[[0., 0., 0., 0.], [0., 0., 0., 0.]...
2018-09-16 10:07:57 31367
原创 kNN及Python实现
一.背景引入最近邻(KNN-K Nearest Neighbor)算法主要用在分类中,思想是物以类聚。如下图所示:已知蓝色方块和红色三角,问绿圆属于哪一类?按照KNN的思想,如果距离选在在第一个圆圈中,此时K=3,红角占比2/3,蓝块占比1/3,所以应属于红角;如果距离选在第二个圆中,K=5,则3/5>2/5,应归为蓝快。从简单例子可以看出,KNN的分类效果取决于两个因素:...
2018-09-11 09:45:57 2640
转载 PyTorch之Variable的detach和detach_
本文源自:https://blog.csdn.net/u012436149/article/details/76714349这里加入自己的一点实践。pytorch 的 Variable 对象中有两个方法,detach和 detach_ 本文主要介绍这两个方法的效果和 能用这两个方法干什么。detach官方文档中,对这个方法是这么介绍的。返回一个新的 从当前图中分离的 Varia...
2018-08-20 10:23:57 1685
转载 PyTorch之Tensor
之前看过tensor的操作,不过对tensor中的squeeze和unsqueeze不太明白,今天看到一篇博客,理解更深了些,这里只截取有关squeeze和unsqueeze的部分。本文转自:https://blog.csdn.net/zyn0318/article/details/802993791. torch.squeeze(input, dim = None, out = None...
2018-08-19 21:18:02 1085
原创 numpy之transpose的理解
背景引入: 在神经网络的数据处理部分,常要用到numpy中的transpose()函数,对二维矩阵的转置大家都明白,但是对高维数组array和矩阵的transpose还是值得记录一下的。代码示例:>>>import numpy as np>>>arr1=np.arange(16).reshape(2,2,4)>>>...
2018-08-19 16:37:04 1455 1
转载 PyTorch之transforms
本文转自:https://zhuanlan.zhihu.com/p/27382990为了方便进行数据的操作,pytorch团队提供了一个torchvision.transforms包,我们可以用transforms进行以下操作:PIL.Image/numpy.ndarray与Tensor的相互转化; 归一化,即0均值,1方差; 对PIL.Image进行裁剪、缩放等操作。 通常...
2018-08-19 14:56:51 972
转载 Python PIL库 图像操作
本文转自:https://www.cnblogs.com/jyxbk/p/8535161.htmlImage读出来的是PIL的类型,而skimage.io读出来的数据是numpy格式的#Image和skimage读图片import Image as imgimport osfrom matplotlib import pyplot as plotfrom skimage im...
2018-08-19 14:14:56 1749
转载 Python实现图片与数组转化
本文转自:https://blog.csdn.net/code_better/article/details/53242943本篇文章主要实现两个功能: ①图片转化为数组并存为二进制文件; ②从二进制文件中读取数据并重新恢复为图片图片大小为32*32。现在我们来聊聊步骤: ①图片转化为数组并存为二进制文件: 1.使用PIL打开图片,并将其分离为RGB三个通道 2.利用nump...
2018-08-19 14:07:10 13133 1
转载 BatchNormalization
文章转自:https://blog.csdn.net/hjimce/article/details/50866313一、背景意义本篇博文主要讲解2015年深度学习领域,非常值得学习的一篇文献:《Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift》,这个...
2018-08-18 20:17:16 278
原创 Linux下解决/boot分区不足
前言在安装ubuntu16.04 的时候,根据网上教程分配了单独的物理分区,大小为200M。但是每当系统升级的时候,旧的内核版本并不会被清理,升级几次就提示boot内存不足了。思路就是卸载旧的版本内核,腾出空间。一 问题描述 当开机出现这个提示表示boot内存已经不足。二 尝试解决1.先查看已经安装的内核。在linux终端输入如下命令dpkg --get-se...
2018-08-17 11:28:06 8147
原创 Import Error:No module named rospkg
原因分析: 装ros的时候,python默认是python2.7, 我电脑上没有装anaconda和pytorch,运行roslaunch时一切正常。后来装上anaconda后就报错啦,原因是:装anaconda的时候默认添加了PATH环境变量,此时的python是python3.6, 如此一来python3.6就成了最先启用的python,而python3.6中没有ros的许多p...
2018-08-05 17:44:44 4914
转载 linux 下修改和查看PATH 环境变量的方法
文章转自:https://www.cnblogs.com/hust-chenming/p/4943268.html在Linux安装一些软件通常要添加路径环境变量PATH.PATH环境变量通俗的讲就是把程序的路径"备案"到系统中,这样执行这些程序时就不需要输入完整路径,直接在bash输入程序名就可以执行.比如常用的ls命令就是添加好了环境变量才可以直接执行ls查看PATH:echo $PAT...
2018-08-05 16:11:45 2721
转载 Ubuntu 16.04+pytorch(cpu版)
这是我参考的原文,只是个别地方添加或修改。https://blog.csdn.net/tuyim7124/article/details/80723997一、目标环境ubuntu16.04+python3.6+pytorch(CPU版)二、安装步骤(一)安装anaconda1.在 anaconda官网 选择 Python 3.6 version 下载,考虑到服务器在国外,下...
2018-08-04 16:22:00 4458 1
原创 ROS gazebo 模型加载报错
我的ros装的是ros-kinetic-desktop-full版本,所以不用另装gazebo, 但是用命令$roscore$rosrun gazebo_ros gazebo启动后,出现如下错误:Error [parser.cc:523] Unable to find uri[model://sun]Error [parser.cc:523] Unable to find uri[model://...
2018-07-13 10:47:45 4352
转载 win7+vs2013+opencv3.3.0配置
在配置的过程中分别参考了一下博客:https://blog.csdn.net/qq_35144795/article/details/78808293;https://blog.csdn.net/amusi1994/article/details/76768775?locationNum=10&fps=1https://blog.csdn.net/dlhlSC/article/detail...
2018-06-28 15:57:34 1592
转载 Dijkastra 算法实现之c++
转自:点击打开链接Dijkstra(迪杰斯特拉)算法是典型的最短路径路由算法,用于计算一个节点到其他所有节点的最短路径。主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止。Dijkstra算法能得出最短路径的最优解,但由于它遍历计算的节点很多,所以效率低。 Dijkstra算法是很有代表性的最短路算法,在很多专业课程中都作为基本内容有详细的介绍,如数据结构,图论,运筹学等等。其基本思想是,...
2018-06-27 16:35:30 594
转载 U-Net
转自点击打开链接U-Net:恢复图像的位置信息在深度学习应用到计算机视觉领域之前,人们使用 TextonForest 和 随机森林分类器进行语义分割。卷积神经网络(CNN)不仅对图像识别有所帮助,也对语义分割领域的发展起到巨大的促进作用。语义分割任务最初流行的深度学习方法是图像块分类(patch classification),即利用像素周围的图像块对每一个像素进行独立的分类。使用图像块分类的主要...
2018-06-25 20:26:34 607
转载 Python之OrderedDict
转自:点击打开链接很多人认为python中的字典是无序的,因为它是按照hash来存储的,但是python中有个模块collections(英文,收集、集合),里面自带了一个子类:OrderedDictOrderedDict,实现了对字典对象中元素的排序。请看下面的实例: 1 import collections 2 print "Regular dictionary" 3 d={} 4 d[...
2018-06-25 17:22:26 267
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人