- 博客(25)
- 资源 (1)
- 收藏
- 关注
原创 默认拷贝构造函数 与 自定义拷贝构造函数
拷贝构造有Person类如下:class Person{ char* pName;public: Person(char* pN="noName") { cout<<"Constructing "<<pN<<endl; pName=new char[strlen(pN)+1]; if(pName) strcpy(pName,pN); } ...
2020-04-27 09:09:25
838
原创 神经网络与深度学习系列 -反向传播算法
矩阵的在神经网络中的应用利用矩阵在神经网络中,可以大大简化公式的复杂性,同时矩阵运算在反向传播中使用起来极为方便。上图给出了神经网络中对权重的标注方式,wjklw_{jk}^lwjkl表示从 (l−i)th{(l-i)}^{th}(l−i)th 层的第 kthk^{th}kth 个神经元到lth{l}^{th}lth 层的第 jthj^{th}jth 个神经元的连接上的权重。上图给出了...
2019-10-29 08:47:29
602
原创 神经网络与深度学习系列 - 梯度下降与随机梯度下降
神经网络与深度学习系列文章将立足于Michael Mielsen的《Nerual Networks and Deep Learning》一书,这本书内容的开展方式非常棒:以原理为导向,通过攻克一个具体的问题“识别手写数字”,来学习神经网络与深度学习的核心理论。通过本书的学习可以在自己脑海中先构建一套完整的神经网络知识“骨架”,之后再通过其他方面学习将“羽翼”填充起来,逐步学习神经网络。感知机第...
2019-10-24 17:46:19
770
原创 vs:MFC程序通过命令行窗口输出cout等语句
MFC程序通过命令行窗口输出cout等语句一种简便方式一种简便方式在MFC项目上右键->属性如下图所示:配置属性->生成事件->后期生成事件命令行:输入editbin /SUBSYSTEM:CONSOLE $(OUTDIR)\ProjectName.exe(其中 ProjectName.exe为自己的可执行文件名称)之后便可以在命令行窗口输出cout语句内容。...
2019-07-24 17:40:15
2326
原创 vs错误:error C2872: “ACCESS_MASK”: 不明确的符号
问题:出现错误error C2872:“ACCESS_MASK”:不明确的符号;问题原因:using namespace cv 和windows中都有ACCESS_MASK定义,所以导致该变量不明确;解决方式:将所有的头文件(.h)中的using namespace cv都去掉,然后在需要用到的地方用 cv :: 代替。...
2019-07-18 09:24:49
1764
原创 errorLNK1169:找到一个或多个多重定义的符号
提供解决该问题的另一个思路:、有以下文件结构:B.cpp中有语句:#include “B.h”如果个人写的头文件 A.h也需要被B.cpp所包含,那就直接在B.cpp中添加:#include “A.h”, 不要把#include "A.h添加到头文件 “B.h”中;如果B.h还被其他.cpp文件所包含的话,就会出现 “errorLNK1169:找到一个或多个多重定义的符号”,应尽量避免这...
2019-07-09 17:18:00
637
翻译 Pytorch:利用迁移学习做图像分类
在这一篇文章中,我们描述了如何在 pytorch中进行图像分类。我们将使用Caltech256数据集的一个子集对10种不同动物的图像进行分类。借此来介绍数据集的准备、数据扩充,以及构建分类器的完整步骤。使用转移学习来使用低层次的图像特征,如边缘、纹理等。通过借助一个预训练的模型 resnet50,训练自己的分类器来学习数据集图像中更高级的细节,比如眼睛、腿等。ResNet50 已经在ImageNe...
2019-07-03 12:11:26
9287
4
翻译 Pytorch基础
什么是PytorchPytorch是一个基于python的库,用它可以方便地构建深度学习模型并应用在不同的领域。但是它不仅仅是另一个深度学习库那么简单,他也是一个科学计算软件包。作为一款基于python的科学计算软件包,主要有两大特色:代替Numpy使用GPUs的能力;一个拥有很大灵活度和速度的深度学习研究平台;Pytorch使用 Tensor 作为他的核心数据结构,这一结构与Nump...
2019-07-01 13:59:45
349
原创 windows下利用Anaconda安装LabelImg
官方安装教程:本身电脑上安装有Anaconda 和 python3.7,LabelImg 在Github上该环境下的安装教程如下:Step1:下载LableImg-master, 解压到文件夹LabelImg_master。Step2:打开Anaconda Prompt, 进入到文件夹LabelImg_master内,输入:conda install pyqt=5如下图询问Pro...
2019-06-25 18:49:40
13260
9
转载 fopen、sprintf不安全的错误
VS2013中使用fopen、sprintf等函数会出现安全问题:error C4996: ‘fopen’: This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help fo...
2019-06-19 19:00:31
4256
原创 C++中 “ copyTo ” 和 “赋值操作符 = ” 的区别
如果在赋值的时候使用 “ = ”,但却对 “=” 的用法不熟悉,程序最终结果可能和自己预料的结果千差万别,而且问题原因及其难找!!!自己碰到过两三次,都是在蒙头一顿分析后才恍然记起 “ = ”的用法是特殊的,所以有必要记录下来.Mat类Mat类由两部分组成:矩阵头(包含矩阵尺寸,存储方法,存储地址等信息);指针 (指向存储所有像素值的矩阵(根据所选存储方法的不同矩阵可以是不同的维数);c...
2019-05-29 10:09:45
1196
翻译 Opencv:基于Hu-moments(hu矩)的形状匹配
本文将按照以下目录展开介绍:什么是图像矩;如何计算图像矩:什么是Hu矩;如何利用Opencv计算一个图像Hu矩;如何利用Hu-矩来寻找两个形状的相似性;什么是图像力矩图像矩是图像像素灰度值的加权平均,下面通过一个简单的例子来说明。假设有一个单通道的二值图像 I ,位置 (x,y) 出的灰度值是 I(x,y), I(x,y) 的取值是 0 或 1。最简单的一种力矩可以通过以...
2019-05-21 11:16:58
8729
2
原创 SIFT或SURF做图像匹配过程中出现 “未声明的标识符”问题以及常用匹配函数
“未声明的标识符***** ” 问题今天用opencv249的SIFT时碰到一点问题:“未声明的标识符***** ”,涉及到头文件包含问题,经查询整理如下:2.4.X版本的特征提取 SurfFeatureDetector(或者SiftFeatureDetector)包含在opencv2/nonfree/features2d.hpp中,应该include这个头文件,并且在附加依赖项中加入:op...
2019-05-17 14:56:36
1272
原创 Computer Vision: ORB
ORB(Oriented FAST and rotated BRIEF) 是一种快速稳定的的局部特征检测算法,来源于2011年的一篇名为“ORB: An efficient alternative to SIFT or SURF”的论文,从论文题目来看它声称可以作为大名鼎鼎的 SIFT 和 SURF 算法的替代品,的确在计算速度,匹配表现和专利应用方面是优于前两者的,特别是专利方面, SIFT 和...
2019-05-07 11:27:44
264
原创 机器学习:梯度下降策略(Gradient Decent)
单变量线性回归:我们有以上数据,这些数据表示的是房屋尺寸(x)和房屋价格(y)的关系, 我们希望从这些数据中找到一个房屋预测模型,当我们给这个模型一个房屋尺寸信息 (x_i) 的时候,该模型能给我们预测一个大概的房屋价格 (y_i)。这就是一个典型的单变量先行回归问题,该问题描述可以用下边的过程来表示:其中 h 是从数据中找出来的房屋模型,又称为“假设”。假设(hypothesis):单...
2019-04-23 19:28:08
787
原创 OpenCV: 函数bitwise_and和bitwise_or的操作
函数CV_EXPORTS_W void bitwise_and(InputArray src1, InputArray src2, OutputArray dst, InputArray mask = noArray());CV_EXPORTS_W void bitwise_or(InputArray src1, InputArray src2, OutputArray dst, InputA...
2019-04-22 13:55:43
10955
原创 Visual Studio2013,2015官方完全卸载工具
介绍对于Visual Studio的卸载,有经验的应该知道要卸载干净是相当的麻烦,官方对此也有描述:“ Visual Studio Uninstallation sometimes can be unreliable and often leave out a lot of unwanted artifacts. Visual Studio Uninstaller is designed to...
2019-04-22 10:05:09
4121
7
翻译 OpenCV: Alpha融合
Alpha融合Alpha融合是一种将前景通过透明度叠加到背景上的过程。透明度通常是图像的第四通道,当然也可以被分离出来成为一个单独的图像。这个透明的掩模通常被称为alpha掩模。在上述图片中,左上是前景图片;右上是灰度alpha掩模;左下是背景图片,右下是融合结果。alpha融合背后的数学原理是相当直接的。在每一个像素位置,利用alpha模板(a)来融合前景图值和背景图像值。以上的alp...
2019-04-18 17:53:39
5856
2
原创 "fatal error LNK1201:写入程序数据库“***.pdb”时出错;请检查是否是磁盘空间不足、路径无效或权限不够" 、在启动调试的时候出现:无法启动****.dll 、
在调试自己写的dll过程中,在对dll工程“重新生成解决方案”的时候就会出现以上错误,解决请先参考以下方法:将任何可能使用该项目生成的pdb文件的项目都停掉,因为当你编译某一项目A时,该项目A的pdb文件若正被另一处于调试状态下的编译器所使用,那么编译无法向项目A的 pdb文件写入数据。...
2019-04-16 16:38:03
1844
原创 win10和Visual Studio2015环境下多版本opencv共存
现网上有大量VS+opencv配置方法,而且方法基本都是只需第一次配置,以后无需重新配置。一次配置就一劳永逸的优势很明显,但也有一个很不方便的缺陷所在:假如你按照这样的方法配置了VS+opencv3,使用过程中用opencv3很方便,然而当你碰到难题需要上网求助,网上搜到大牛放出的代码超级完美的时候,却发现大牛用opencv2编写的程序你无法运行。作为刚入门的小白改编成opencv3又有些许困难....
2019-04-16 10:12:00
1195
翻译 OpenCV:图像变形(Image Morphing)
融合/形变技术Image Morphing的原理是十分简单的。有两幅图像 I 和 J ,我们希望通过融合图像 I 和 J 来创建一幅新的图像 M. 图像 I 和 J 的融合过程是由参数 alpha 来控制,参数 alpha 介于0和1之间。当alpha = 0,新的图像 M看起来更接近 I;当alpha = 1,新的图像 M看起来更接近 J。可以通过以下的方程来进行融合:然而,令alpha ...
2019-04-04 10:57:13
15294
13
翻译 OpenCV:将一个三角形形变到另一个三角形
**OpenCV: 将一个三角形形变到另一个三角形**仿射变换利用OpenCV进行三角形扭曲形变1. 计算边界框2. 图像剪切&坐标变换3. 计算仿射变换矩阵4. 将包围框内的像素进行扭曲5. 将三角形外的像素遮盖住在本文中我们将学习如何将一幅图像中的单一三角形扭曲形变到另一幅图像的三角形中。在计算机图像学中,对三角形进行形变扭曲是一个常见的操作,因为任何3D表面都可以由很多三角形来...
2019-03-29 10:11:46
2148
翻译 OpenCV: 单应矩阵的应用
**OpenCV: 单应矩阵的应用**例子1:透视矫正步骤:结果:代码:例子2:物体替换步骤:结果:代码:在之前的文章中介绍过用OpenCV实现图像配准,主要包含兴趣点提取和利用单应矩阵配准两大方面。本文将主要介绍两个利用单应矩阵的应用例子。为了计算两幅图片之间的单应性,我们至少需要知道左边和右边两幅图片中4个对应点对的坐标信息(上图的黄,绿,红,橙分别表示四个对应的物理点的位置)。若我们有...
2019-03-28 10:59:11
2080
翻译 OpenCV:二值图像中填充孔洞
**OpenCV:二值图像中填充孔洞**imfill in OpenCVC++程序:本文介绍一种用OpenCV再二值化图像中填充孔洞的办法,如上图最左侧的硬币照片,我们想要用二值化图像来表示出硬币所在的位置(如右图所示),直接进行二值化分割的结果往往如中间的结果所示,在硬币所在位置内也包含和背景一样的灰度。注意到硬币的边缘和背景颜色是黑色的,可以和背景明显的区分开来。所以我们可以先利用简单的...
2019-03-27 17:12:49
3878
翻译 OpenCV:基于特征的图像校准
**OpenCV: 基于特征的图像校准**什么是图像配准或图像对齐图像配准的应用图像配准的基本理论如何得到单应矩阵寻找匹配点OpenCV图像配准代码本文将会介绍一种基于特征的图像校准方式,在这种方式中,大量的特征将在第一张源图中被提取出来,这些特征将在目标图像中寻找匹配的特征信息。通过两幅图片中相匹配的特征信息,源图和目标图像之间的像素坐标转换关系将会被提取出来。借助这种转换关系可以实现将一幅图...
2019-03-25 18:19:07
7004
4
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人