自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(58)
  • 资源 (1)
  • 收藏
  • 关注

原创 libiot_sdk.a(mqtt_client.o):(.data+0x1060):对‘__gcov_merge_add’未定义的引用

        项目需要用到阿里云Iot平台,ubuntu14.04下交叉编译ARM平台成功成功生成了Iot的相关库(包括libiot_sdk.a libiot_tls.a libiot_hal.a)并可以正常使用,但是在X86 64位下编译生成得到相关库加入项目工程中编译却出现以上错误。这里记录下解决过程:首先makefile库连接中加入libgcov.a库支持 -lgcov,解决此问题,但...

2019-02-25 23:45:47 2147 1

转载 工业互联网和工业物联网的三个冷思考

1. 关于1%关于工业互联网的实际价值中很多都提及了GE的1%理论工业互联网只要提升1%的制造能力就能为整个制造业带来上万亿的利润。但对于实际的单个企业来说,一方面目前工业互联网实际能够带来的生产效率和效益的提升并未通过大量实际案例得到证实;另一方面,即使真的能够带来1%制造能力的提升,但企业要具体去实施落地的话可能会产生2%的成本(系统部署的全生命周期成本)和3%的风险(系统建设和磨合期对企...

2018-11-17 18:26:57 1028

原创 MTCNN人脸检测与人脸对齐

MTCNN人脸检测与人脸对齐1 写在前面首先再次提一下人脸识别的一般步骤:人脸检测:简单的说就是得到人脸图像在图片中的位置;具体的一些方法有比如HOG/FHOG/SVM,还有一些基于Cascade的方式可以达到比较不错的效果。例如Compact CascadeCNN速度较快,速度要优于opencv和dlib,还有就是RCNN系列的通用检测方法(如R-CNN,FAST R...

2018-05-04 23:35:12 9714

转载 libevent源码深度剖析

                                                                       第一章1,前言Libevent是一个轻量级的开源高性能网络库,使用者众多,研究者更甚,相关文章也不少。写这一系列文章的用意在于,一则分享心得;二则对libevent代码和设计思想做系统的、更深层次的分析,写出来,也可供后来者参考。附带一句:Libeven...

2018-03-26 09:23:14 11394 1

原创 Linux服务器入侵预防与问题排查

Linux服务器入侵预防与问题排查 弱口令入侵检查 有时候由于服务器系统账户存在弱口令的原因很容易被黑客破解或是一些入侵工具入侵,用last命令用来列出目前与过去登录系统的用户相关信息,以下用查看恶意的入侵记录,其中第一列:用户名第二列:终端位置。(pts/0通过ssh或者telnet远程连接的用户,tty:直接连接到计算机或者本地用户)第三列:登陆IP或者内核(看到0.0或者什...

2018-03-24 12:26:31 4290

转载 RCNN算法详解

本文是继RCNN[1],fast RCNN[2]之后,目标检测界的领军人物Ross Girshick团队在2015年的又一力作。简单网络目标检测速度达到17fps,在PASCAL VOC上准确率为59.9%;复杂网络达到5fps,准确率78.8%。作者在github上给出了基于matlab和python的源码。对Region CNN算法不了解的同学,请先参看这两篇文章:《RCNN算法详解》,《fa...

2018-03-07 21:40:14 742

转载 MongoDB:MySQL数据向MongoDB迁移

MongoDB:MySQL数据向MongoDB迁移背景MySQL作为一个普遍使用的关系型数据库,其性能毋庸置疑,但是当MySQL中的数据太过于庞大时,对查询效率会产生较大的影响,所有我们将过期不常使用的数据迁移到MongoDB中。而MongoDB作为nosql数据库的一种,可以十分方便的存储大规模数据,且它的操作方式和MySQL十分相似,可以说MySQL能够做到的都可以使用MongoDB实现。...

2018-03-06 16:23:40 813

转载 Mongodb 数据迁移

需求:需要将一台linux上的mongodb数据迁移到另外一台linux上例:A迁移到B 方案:两个命令即可完成任务:数据的导出:mongoexport数据的导入:mongoimport 具体步骤:导出:1.找到A的mongodb的mongoexport所在目录。例如:cd /usr/local/mongodb/bin2.将数据导出,执行命令:./mongoexport -d DataBase...

2018-03-06 16:19:37 616

转载 JWT(Json Web Token) - API的用户认证详解

 JWT(Json Web Token)- API的用户认证在JavaScript前端技术大行其道的今天,我们通常只需在后台构建API提供给前端调用,并且后端仅仅设计为给前端移动App调用。用户认证是Web应用的重要组成部分,基于API的用户认证有两个最佳解决方案 —— OAuth 2.0 和 JWT(JSON Web Token)。1、JWT定义及其组成JWT(JSON Web Token)是一...

2018-02-26 22:23:24 749

转载 二维码详解

二维码知识介绍一、二维码的分类二维码,从字面上看就是用两个维度(水平方向和垂直方向)来进行数据的编码,条形码只利用了一个维度(水平方向)表示信息,在另一个维度(垂直方向)没有意义,所以二维码比条形码有着更高的数据存储容量。从形成方式上,二维码可以分为两类,1、堆叠式二维码:在一维条形码的基础上,将多个条形码堆积在一起进行编码,常见的编码标准有PDF417等                     ...

2018-02-11 16:09:30 16201 3

转载 基于微信小程序的人脸识别

现在关于人脸识别的SDK其实有很多,诸如face++、百度大脑之类的,他们都能为开发者免费提供人脸识别的接口。阿里也和face++合作,实现了支付宝的刷脸支付。但是很遗憾,网上关于识别一段视频中的用户行为(诸如摇摇头,眨眨眼,微笑)的资料很少,可能是技术没有公开,所以只能自己去想解决方法了。本人最近在做一个关于微信小程序的毕业设计,所以想到了把这两个技术结合下,这里写篇博客,为大家解解惑吧

2018-01-11 00:44:59 6847 2

原创 人脸3D重建

人脸3D重建  概述 为了提高不同光照和不同角度等实际工况条件下的人脸识别率,用2D人脸重建3D人脸模型,可以得到更多不同角度的人脸数据用于训练,从而提高人脸识别精度。另外用3维人脸数据来做人脸识别要比使用2D人脸图像具有更好的鲁棒性和更高的精度,特别是在人脸角度大,环境光变化,化妆、以及表情变化等复杂的情况下仍然具有较高的识别精度,因为相对于2D人脸图像数据而言,3D人脸包含了

2017-11-30 01:31:13 12115

转载 面试中的Singleton

引子  “请写一个Singleton。”面试官微笑着和我说。  “这可真简单。”我心里想着,并在白板上写下了下面的Singleton实现: 1 class Singleton 2 { 3 public: 4 static Singleton& Instance() 5 { 6 static Singleton singleton

2017-09-05 23:23:49 354

原创 如何优化深度神经网络

如何优化深度神经网络  网络越深越容易过拟合?假设训练两个层数不一样的神经网络,一个层数较少(例如20层),一个层数较多(50层),在测试集中我们发现: 测试集上的效果显示20层要56层的错误率要更低,但是我们不能就先入为主的断定56层是由于参数太多导致过拟合,所以在测试集上表现要比20层神经网络要差。其实我们应该首先看看它们在训练集上的表现: 上图我们看到在训

2017-08-18 11:21:35 7118 1

原创 深度学习基本模型浅析

深度学习基本模型浅析前言台湾李宏毅的深度学习课程说实话讲得还是比较不错的,有需要的话还是比较推荐学习,这篇也是基于它的深度学习基本结构的讲解的总结。 深度学习的三个步骤深度学习首先是我们要构建一个网络,这个网络也就是我们所说的深度学习神经网络模型。深度学习一般可以归纳为下图所示的3个步骤: 第一个步骤, 神经网络模型是一个有简单函数组成的复杂的函数,通常我们设计一个神经

2017-08-14 13:35:56 13081

原创 Dlib构建神经网络

Dlib构建神经网络 构建简单的LeNet CNN定义LeNet概况的说,网络的定义包括3个部分。损失层,一堆计算层,然后是输入层,你在下面的网络定义中可以看到这些组件。输入层这里所说的输入层,是网络期望被赋予matrix矩阵对象作为输入。通常,在这里你可以用dlib 图像或是矩阵类型,说是甚至是用定制输入层定义你自己的类型。中间层中间层定义了网络将做的运算来转换输

2017-08-14 13:35:15 4217 1

原创 Triplet Loss及其梯度

Triplet Loss及其梯度  Triplet Loss简介我这里将Triplet Loss翻译为三元组损失,其中的三元也就是如下图的Anchor、Negative、Positive,如下图所示通过Triplet Loss的学习后使得Positive元和Anchor元之间的距离最小,而和Negative之间距离最大。其中Anchor为训练数据集中随机选取的一个样本,Positive

2017-08-14 13:35:01 18800 3

转载 MySQL优化原理

说起MySQL的查询优化,相信大家积累一堆技巧:不能使用SELECT *、不使用NULL字段、合理创建索引、为字段选择合适的数据类型..... 你是否真的理解这些优化技巧?是否理解其背后的工作原理?在实际场景下性能真有提升吗?我想未必。因而理解这些优化建议背后的原理就尤为重要,希望本文能让你重新审视这些优化建议,并在实际业务场景下合理的运用。 MySQL逻辑架构 如果能在头脑中构建一幅

2017-08-10 09:08:28 402

原创 C++ 堆内存管理

C++ 堆内存管理 auto_ptr的缺陷在很早的C++98之前,C++用"auto_ptr"智能指针来管理堆分配的内存,它的使用非常简单:auto_ptr ap(new int(1024));即将new操作返回的指针作为auto_ptr的初始值,不用调用delete即可实现堆内存的自动释放(如析构的时候)。 由于auto_ptr本身存在一些问题,它在C++11中被抛弃了。

2017-07-12 11:40:25 669

原创 Dlib+OpenCV深度学习人脸识别

Dlib+OpenCV深度学习人脸识别 前言人脸识别在LWF(Labeled Faces in the Wild)数据集上人脸识别率现在已经99.7%以上,这个识别率确实非常高了,但是真实的环境中的准确率有多少呢?我没有这方面的数据,但是可以确信的是真实环境中的识别率并没有那么乐观。现在虽然有一些商业应用如员工人脸识别管理系统、海关身份验证系统、甚至是银行人脸识别功能,但是我们可以仔细

2017-06-19 01:10:07 29889 23

转载 【深度长文】人脸识别:人脑认知与计算机算法(五部曲)

【来源】本文经作者“Owl of Minerva”授权转载【链接】https://zhuanlan.zhihu.com/HicRhodushicsalta1初期预测和介绍现阶段,人脸识别是人工智能领域最炙手可热的话题之一。Google和Facebook,以及国内一些创业公司都投入重金在该领域进行研发,并且有相当多的商业应用。随着Dee

2017-06-15 14:56:45 5419

转载 一文读懂监督学习、无监督学习、半监督学习、强化学习这四种深度学习方式

一般说来,训练深度学习网络的方式主要有四种:监督、无监督、半监督和强化学习。在接下来的文章中,计算机视觉战队将逐个解释这些方法背后所蕴含的理论知识。除此之外,计算机视觉战队将分享文献中经常碰到的术语,并提供与数学相关的更多资源。监督学习(Supervised Learning)监督学习是使用已知正确答案的示例来训练网络的。想象一下,我们可以训练一个网络,让其从照

2017-06-15 14:50:40 13564 2

原创 CMake问题:The CXX compiler identification is unknown

CMake问题:The CXX compiler identification is unknown CMake version: 3.7.0rc1 or highVisual Studio 2015 Error detailed:The C compiler identification is unknownThe CXX compiler identificatio

2017-06-09 09:27:12 16300 2

翻译 卷积神经网络

卷积网络网络完整版:https://git.oschina.net/wjiang/Machine-Learning  卷积网络简介卷积网络(leCun,1989),也被称为卷积神经网络或CNN, 它是处理数据的一个特殊的神经网络,它包含一个已知的类网格的拓扑结构。例子包括时间序列,它可以被认为是一个以固定时间间隔采样的1D网格,和图像数据,它被认为是2D像素的网格。卷积网络在实际的

2017-05-22 00:51:59 2052 1

原创 TensorFlow安装及实例-(Ubuntu16.04.1 & Anaconda3)

TensorFlow安装及实例-(Ubuntu16.04.1 & Anaconda3)Python-pip 和python-devPip是python的默认包管理器,直接用pip安装TensorFlow,安装这两个包命令:apt-get install python-pip python-dev python-virtualenv可以virtualenv 创建一个隔离的容器, 来安

2017-05-06 01:11:50 2951

原创 CAN总线错误分析与解决

CAN总线错误分析与解决背景写这篇文章是因为我看到网上介绍CAN总线错误处理的文章,清一色的都是生搬照抄教科书或是数据文档的内容,特别是国内很难找到一些有价值的内容,这让一些真正有需要的人很苦恼,包括我自己。这篇不打算对CAN的错误处理机制做进一步的探讨,而是从实际工作中碰到的具体问题来分析一些常见的CAN总线错误和解决办法。CAN节点数据收发过程了解CAN节点在总线上数据上的收发

2017-04-12 00:41:23 44641 12

转载 开发者都应该使用的10个C++11特性

摘要: 在C++11新标准中,语言本身和标准库都增加了很多新内容,本文只涉及了一些皮毛。不过我相信这些新特性当中有一些,应该成为所有C++开发者的常规装备。你也许看到过许多类似介绍各种C++11特性的文章。下面是我总结的,C++开发者都需要学习和使用的C++11新特性。auto    在C++11之前,auto关键字用来指定存储期。在新标准中,它的功能变为类型推断。auto

2017-04-01 00:20:01 281

转载 C++ 随机数生成总结

一、C++中不能使用random()函数==================================================================================本文由青松原创并依GPL-V2及其后续版本发放,转载请注明出处且应包含本行声明。C++中常用rand()函数生成随机数,但严格意义上来讲生成的只是伪随机数(pseudo-ran

2017-03-31 22:09:26 1557

原创 CAN总线要点

CAN总线要点 前言 CAN总线的应用在现在看来越来越广泛,我厂设备从最初的ARM9与ARM7平台、期间升级过度到CortexA8与Cortex M3平台,再到现在的Cortex M4平台,围绕CAN进行了一系列产品的开发,CAN总线的稳定性是毋庸置疑的。CAN总线物理结构与特性 CAN总线网络 CAN总线网络主要挂在CAN_

2017-03-31 00:09:47 2070

原创 SVM与ANN实现OCR字符识别

SVM -支持向量机原理与实践之实践篇前言最近太忙,这几天还是抽空完成实践篇,毕竟所有理论都是为实践服务的,上一篇花了很大篇幅从小白的角度详细的分析了SVM支持向量积的原理,当然还有很多内容没有涉及到,例如支持向量回归,不敏感损失函数等内容,但是也不妨碍我们用支持向量机去实现一个分类系统,因为有了对前面说讲述知识的一定的了解,就可以很好的为我们这一篇的实践内容服务。实验内容和目标下

2017-03-28 00:55:08 11373

原创 SVM -支持向量机原理详解与实践之四

SVM -支持向量机原理详解与实践之四 前言去年由于工作项目的需要实际运用到了SVM和ANN算法,也就是支持向量机和人工神经网络算法,主要是实现项目中的实时采集图片(工业高速摄像头采集)的图像识别的这一部分功能,虽然几经波折,但是还好最终还算顺利完成了项目的任务,忙碌一年,趁着放假有时间好好整理并总结一下,本文的内容包括:前面的部分是对支持向量机原理的分析,后半部分主要直接上手的一些

2017-03-14 22:30:06 2367

原创 SVM-支持向量机原理详解与实践之三

SVM -支持向量机原理详解与实践之三 3.9 核函数(Kernels)与核技巧什么是核什么是核,核其实就是一种特殊的函数,更确切的说是核技巧(Kernel trick),清楚的明白这一点很重要。为什么说是核技巧呢?回顾到我们的对偶问题:  映射到特征空间后约束条件不变,则为:

2017-03-14 22:28:37 3061

原创 SVM-支持向量机原理详解与实践之二

SVM -支持向量机原理详解与实践之二  SVM原理分析以下内容接上篇。拉格朗日对偶性(Largrange duality)深入分析前面提到了支持向量机的凸优化问题中拉格朗日对偶性的重要性。因为通过应用拉格朗日对偶性我们可以寻找到最优超平面的二次最优化,所以以下可以将寻找最优超平面二次最优化(原问题),总结为以下几个步骤:在原始权重空间的带约束的优化问题。(注

2017-03-14 22:27:53 4158 1

原创 SVM-支持向量机原理详解与实践之一

SVM -支持向量机原理详解与实践 前言去年由于工作项目的需要实际运用到了SVM和ANN算法,也就是支持向量机和人工神经网络算法,主要是实现项目中的实时采集图片(工业高速摄像头采集)的图像识别的这一部分功能,虽然几经波折,但是还好最终还算顺利完成了项目的任务,忙碌一年,趁着放假有时间好好整理并总结一下,本文的内容包括:前面的部分是对支持向量机原理的分析,后半部分主要直接上手的一些实践

2017-03-14 22:26:22 25429

转载 BP是如何运行的-普林斯顿大学教授Sanjeev Arora

About Contact SubscribeBack-propagation, an introductionSanjeev Arora and Tengyu Ma  •  Dec 20, 2016  •  21 minute readGiven the sheer number of backpropagation tutorials on

2017-02-24 11:33:04 1029

转载 CPaintDC、CClientDC、CWindowDC和CMetaFileDC类的主要特点及区别

1、 设备环境(DC)    (1)在Windows中,显示工作是基于设备环境的。所谓设备环境(DC)是一种Windows数据结构,该结构包含应用程序设备输出时所需要的信息。   (2)在使用任何绘图函数之前必须建立一个设备环境对象。   (3)MFC中提供了设备环境类CDC,它封装了绘图所需要的所有函数,其中包括了大多数的Windows API中的GDI函数。

2017-02-16 22:22:51 462

转载 从神经元到深度学习

神经网络浅讲:从神经元到深度学习   神经网络是一门重要的机器学习技术。它是目前最为火热的研究方向--深度学习的基础。学习神经网络不仅可以让你掌握一门强大的机器学习方法,同时也可以更好地帮助你理解深度学习技术。  本文以一种简单的,循序的方式讲解神经网络。适合对神经网络了解不多的同学。本文对阅读没有一定的前提要求,但是懂一些机器学习基础会更好地帮助理解本文。

2016-10-31 14:17:54 6822 1

原创 Git merge 冲突解决简明教程

Git merge 冲突解决简明教程目录1.    概述    12.    从git difftool & mergetool 工具开始 – Beyond Compare    1 2.1.    下载安装Beyond Compare    1 2.2.    创建启动Beyond Compare脚本    1 2.2.1.    创建git-difftool-bc

2016-10-30 14:26:31 13744 1

转载 循序渐进地代码重构

英文原文:Refactoring -- Not on the backlog!  对于如何进行代码重构,一直有着很多种说法。很多人都认为应该将重构代码放在backlog里。但是其实,这并不是一个理想的方法。  在项目刚刚开始的时候,你的代码很干净。  即使有的时候需要小小的绕一下路,但是这个时候我们可以轻松、平稳的添加功能。这个阶段一般都不会出现问题,而且由于我

2016-10-29 00:10:26 507

转载 openMP的一点使用经验

openMP的一点使用经验最近在看多核编程。简单来说,由于现在电脑CPU一般都有两个核,4核与8核的CPU也逐渐走入了寻常百姓家,传统的单线程编程方式难以发挥多核CPU的强大功能,于是多核编程应运而生。按照我的理解,多核编程可以认为是对多线程编程做了一定程度的抽象,提供一些简单的API,使得用户不必花费太多精力来了解多线程的底层知识,从而提高编程效率。这两天关注的多核编程的

2016-10-07 14:51:48 362

CANopen协议讲解

CANopen协议讲解,帮助你快速有效的认识并了解CAN总线细节

2018-12-19

空空如也

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

TA关注的人

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