自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

原创 机器学习:核函数是映射吗?

废话前段时间,有一个面试,让介绍SVM,最后谈到核函数上面,我说核函数就是向高维空间映射使得本身在低维空间不可分的情况,在高维空间变得更可能可分。然后老师突然反问,“核函数是映射吗?你确定吗?”,我当时说是,被否定了。现在想想它和映射确实可以说是无关的。理解核函数是高维空间中求内积的的一个便捷方式。它确实隐含了一个映射,但它本身并不是映射,只是在隐含的高维空间中求内积,是一个trick,所以有kernel trick的叫法,关于隐含的高维空间,很多时候是求不出来对应的显式表达式的。反而,kernel

2021-06-30 11:13:34 574

原创 机器学习:VAE重参数技巧一个细节理解

关于q(z)q(z)q(z)和p(ε)p(\varepsilon)p(ε)VAE中,用随机梯度变分推断进行参数θθθ进行更新时,如果直接从q(z)q(z)q(z)中采样z,算期望的梯度会导致"高方差问题",因此采用重参数化技巧,换种方式采样,即用随机变量ε\varepsilonε来代表随机性,服从一个标准正太分布,然后通道对这个随机变量进行变换。一个关键步骤是:Ez q(z)[f(z)]=Eε p(ε)[f(g(ε))]E_{z~q(z)}[f(z)]=E_{\varepsilon

2021-06-29 16:55:33 3785 2

原创 HumanGAN: A Generative Model of Human Images(CVPR2021)

本文模型可以在给定姿势(pose)条件下进行采样(生成图像)[左],能在保持人身份和外表不变的情况下进行姿势变换[中],也能对身体不同部分采样(身体各部分生成多样的图像)摘要本文任务:pose-conditioned image generation/ pose transfer/ part sampling本文是关于人的图像生成任务的,是第一个解决关于将人的图像生成的多个方面问题(全局的外表采样、姿势transfer、不同身体部位和穿衣transfer、分部位采样)整合在一个框架中的方法。方法.

2021-06-23 16:25:33 1378 1

原创 读《神经网络与机器学习(原书第三版)》有感

    首先本书的翻译是真的有问题,很多地方是含混过关,意义很不明确,不少地方甚至直接是错误的翻译,因此如果真有想法,有英语基础,最好是阅读原版教材,至少也要中英对照着看。    造成翻译问题的原因,一方面是译者能力,我感觉更大的原因是原书确实知识面实在太广,原书作者本身也是通信,控制理论大家,所以本书包括了不少物理知识(热力学、布朗运动、统计物理、模拟电路知识),生物神经学知识,信息论知识,最优化理论,导致单一领域的国内专家翻译起来显得很生硬,并且很多术语相比于现在深度学习流行后也是不同的,就比如rec

2020-11-09 14:55:14 341

原创 Turing架构显卡caffe安装(VS2015)

以GTX1660TI为例安装CUDA,CUDNN安装GTX1660TI是图灵架构显卡,Compute capability (version)为7.5,CUDA10.0及以上才支持7.5,因此CudaArchitecture中如果加入compute_75,sm_75;的话需要CUDA为10.0或以上,否则会报错。如果装的是CUDA9.2,在不加compute_75,sm_75;的情况下也是可以编译成功的。同时根据我之前编译的经验,当用老CUDA及CUDNN版本的caffe在GTX1660ti上跑时,训

2020-08-05 00:00:23 351

原创 机器学习:二分类到多分类-ovr,ovo,mvm,sofmax

一般情况下,我们都认为逻辑回归(LR)用来解决二分类问题,BCE损失函数也是用来解决二分类问题的,那逻辑回归以及BCE损失函数能否用来做多分类任务呢,答案是肯定的。有两种方法一、将多分类任务拆解成多个二分类任务;二、对传统的逻辑回归模型进行改造,使之变为softmax回归模型进行多分类任务求解(也就是sklearn中逻辑回归的multi_class=‘multinomial’), 我们可以认为多元逻辑回归就是sofmax回归多分类任务拆解成多个二分类器将多分类任务拆为多个二分类任务求解,一般有.

2020-07-06 21:35:50 2683 1

原创 工业视觉质检,各厂家框架一览

题外话笔者在机器视觉、工业质检,非标自动化的坑里摸爬滚打了几年,常常愁于为什么在这个行业里写检测算法那么累,为什么动不动就要在工厂出差数月。算法,光学这些不行也就算了,为什么大家的自动化水平也不稳定,说出来都是泪啊。对于常出差,结合自身经验和理解做各小小的小结:最最主要得还是客户要求保密,客户生产的产品必须保密,图像数据也必须保密,车间东西只进不出,这个前些博文中也强调了,工业里数据都是高保密性的,大多数工业项目都是以私有化部署为主,这逼得你开发调试不得不到现场,你不可能保证设备一下厂就满足所有需求指

2020-07-04 15:06:23 1900 2

原创 kaggle入门(1):手写字符识别0.99575(top12%-2020/7/2)

kaggle给得训练集:42000张图,用于提交的测试图28000张;记录和总结一下提交记录:第一次:0.98682 (top50%)网络:原生Lenet5数据:随机分配0.1比例的验证集,无数据增广class Lenet(nn.Module): def __init__(self, in_channel = 1, cls = 10): super(Lenet, self).__init__() self.conv1 = nn.Conv2d(in_c

2020-07-02 10:09:09 423

原创 VC中min\max与opencv中std::min/max冲突

如果之前用windows.h中的min/max宏好好的,加了一个opencv的头文件再编译的话,报min/max参数个数或类型不匹配的错误的话,可以用以下方法快速简单处理:调换头文件include顺序,即将windows.h放在opencv包含文件的后面,ex://#include <Windows.h>//#include <opencv2/features2d.hpp>#include <opencv2/features2d.hpp>#include &l

2020-06-22 14:32:14 1696

原创 机器学习:线性回归的理解

关于假设数据高斯分布的理解当误差符合正态分布ξ−N(0,σ2)\xi -N(0,σ^2)ξ−N(0,σ2)时,因变量则符合正态分布N(Xθ,σ2))N(Xθ,σ^2))N(Xθ,σ2)),其中预测函数y=Xθy=Xθy=Xθ,则观测值应该为y^=y+ξ\hat{y}=y+\xiy^​=y+ξ,这个也就是说当误差符合正态分布时,其因变量必然也符合正态分布。在用线性回归模型拟合数据之前,首先要求数据应符合或近似符合正态分布,否则得到的拟合函数不正确。若本身样本不符合正态分布或不近似服从正态分布,则要采用其

2020-06-16 14:15:07 567

原创 图像滤波器系列(2):保边平滑滤波器Edge-Preserving Noise Reduction

注意事项1、边缘位置可能移动2、假设噪声分布于图像数据无关3、最好不好用于高精度测量问题的预处理算子保边滤波都是非线性滤波,以halcon算子来进行介绍eliminate_min_max基本原理 :中心像素比邻域像素最大值还大的,则用一些规则(比如均值)替换;比邻域最小值还小的,替换,达到去噪;而保边的实现是因为:如果是边的话,邻域里至少还有一个像素也是比较大或比较小,与中心像素具有可比性,不会被替换和删除;sigma_image基本操作 :同样是首先确定一个邻域,但中心像素并不会用所有

2020-06-12 17:17:19 1425 1

原创 配置:命令行执行python文件出现UnicodeDecodeError: utf-8 codec cant decode byte问题

解决方法在运行前先输入:chcp 65001原理上述命令,是切换dos代码页到utf-8;因为中文windows系统默认得是GBK编码,即代码页936, 如果我们得python文件是utf-8编码的,在cmd中运行,就会报以上的错误。同样的问题可以查看字符集代码页...

2020-06-03 18:01:07 2477

原创 AI工程化:各家的AI平台、AI中台架构图

阿里的飞天AI平台从架构上来看,飞天平台从底层框架到解决方案层主要有三层:云边端一体的高性能训练和推理引擎框架,包括 Alink、MNN、XDL、SQLFLOW、PAI TensorFlow、PAI Blade、Elastic DL等;PAI机器学习平台:包括轻量级 AI 开发平台、AI大数据系统协同开发平台、AI 推理服务平台;解决方案层:面向智能语音、视觉图像、自然语言处理、自动驾驶等领域百度EasyDL定制AI平台EasyDL是百度大脑推出的定制化AI训练及服务平台,支持面向各行各

2020-05-28 14:32:15 21737

原创 关于云、大数据的入门知识博客集

目前工业视觉检测的开发,运用到深度学习也比较多,正如这篇思考文章中所说,在数据管理、模型管理、以及不同AI框架的环境配置切换方面都是很麻烦的事。但是随着云技术的出现,数据存储变得廉价,AI算法也可以在云深度学习平台上进行训练、部署、管理、监控。本文记录下几个很通俗的入门介绍云计算、大数据的博文。不是技术也能看懂云计算,大数据,人工智能一张图看懂IaaS, PaaS和SaaS的区别打造企业级云深度学习平台——小米云深度学习平台的架构设计与实现在云上玩深度学习...

2020-05-26 22:22:34 172

原创 GLOG不初始化同样会输出到stderr以及LOG(INFO)解析

转自:https://www.cnblogs.com/haodafeng/p/11969284.html    项目中需要打log,当初看到glog,觉得google出品应该差不了,而且简单易用,库不是很大,就选择他了。    但是在使用中还真的发现一些不顺手和库设计上的问题,反正和我的使用习惯有点不一样。设置log参数时有的用google::xx以函数的形式设置,有的以FLAG_xx的形式设置,而且有一些设置项两种方式都可以,但是源码中又走的不是相互封装的关系,看着有点乱,没理解glog为什么要这

2020-05-25 10:40:48 2682

原创 图像滤波器系列(1):冲击滤波器,shock_filter

解决的问题属于图像增强方法,主要增强边缘,减少图像边缘扩散,更便于边缘提取等操作。算法功能在图像边缘产生强的不连续性,在一个区段内(包含一个最大影响区和一个最小影响区的范围简称为区段)图像是分段常数用下图解释什么时最大最小影响区域:首先定义最大-最小影响区域:最大影响区域就二阶偏微分为负数的区域,最小影响区域二阶偏微分为正数的区域然后:一个区段即最大和最小影响区域组成的区段,shock_filter使此区域内是分段常数的,即下图实线:算法起源及思想第一个冲击滤波器shock

2020-05-22 14:39:35 5888

原创 halcon中动态阈值分割以及使用偏差模型法检测缺陷

动态阈值分割定义将图像与局部背景进行比较的操作称动态阈值分割处理。比较操作(做差)时设置得阈值并不一定是动态的,此处动态主要指各个局部的背景灰度值可能是动态变化的。局部背景的估计空域上可以用均值、高斯、中值滤波器对局部进行平滑处理的结果作为对背景灰度值得估计。有时为了加快处理速度,也可以采样的方式,自己任意设置滤波器掩码。 halcon中代码如下:mean_image(Image,Mean,D*2+1,D*2+1)dyn_threshold(Image,Mean,Seg,5,'lig

2020-05-09 20:41:28 2530

原创 上采样pytorch转onnx之onnx runtime error,以及tensorrt解析onnx的错误(Floor int32)

pytorch->onnx错误出现场景pytorch(v1.1.0)训练了一个Unet网络,其中用到了上采样层,最开始直接用torch.onnx.export转onnx(Opset=9)时出现错误:RuntimeError: Failed to export an ONNX attribute, since it’s not constant, please…原因就是pytorch...

2020-04-26 18:52:38 2839

原创 工业视觉检测中关于深度学习工程化的思考

深度学习分类工程化数据1)数据获取2)数据清洗 (@TODO)3)数据变换 (@TODO)训练4)模型训练5)模型选择6)模型调试(@TODO)部署7)模型部署 (@TODO)8)框架接口编写 (@TODO)反馈9)模型上线后信息收集 (@TODO)10)模型上线后数据反馈机制(@TODO)其他11)资源管理(模型、数据) (@TODO)12)过程管理...

2020-04-14 11:42:37 1766 1

原创 基于FCN训练-测试自己的数据集

这里写自定义目录标题前言简化网络样本制作训练测试前言都9102年了,语义分割网络层出不穷,不过作为鼻祖,FCN还是有必要了解下,这里就不在记录其原理,直接基于原始FCN-32s精简网络,对工业缺陷数据进行训练和测试。简化网络相对于工业缺陷数据,sift-flow,pascal数据算是及其复杂的数据,直接用原始的FCN网络进行训练,先不说效果,效率上就过不去,因此需要对网络进行简化,原始网络...

2019-05-15 13:44:11 1364

原创 Halcon(1) HIOStream

简介在头文件 HIOStream.h 中通过内联函数的 形式提供HTuple类的IO操作。HIOStream.h同时兼容< iostream> 和< iostream.h >。功能:可以将HTuple输出到标准输出、文件流对象等ostream对象;可以从istream对象中获取数据;应用HTuple快速显示、输出到文件…实现头文件里实现了 << 和 >>的重载。 以 << 为例inline

2017-11-10 13:22:17 355

原创 Hough变换检测直线到广义霍夫变换

考虑在一个边缘图像中检测一个已知半径的圆,因为圆是旋转对称的,因此只需考虑平移情况。如果希望在边缘图像中尽可能迅速地找到圆的位置,对于比背景亮的圆,它的边缘梯度向量方向垂直圆边界并指向圆中心,如果圆比背景暗,梯度方向背离圆心。由于我们已知圆的半径,理论上我们可以从圆上单个点确定圆的中心。不幸的是,我们不知道哪个点在圆上。我们注意到圆上所有的像素都拥有同样的特性,这个特性就是基于梯度向量可以构建出圆的中心,这样我们就可

2017-10-31 21:05:25 5945

原创 基于Hu矩的区域相似性度量

Hu矩原理利用归一化二阶、三阶中心距派生出的7个不变矩,原理及计算公式见博文:Hu矩计算公式。注: Hu矩变化范围很大,且数字很小,牵涉到计算精度问题,直接处理不方便,可以用取绝对值之后用log函数转换。相似性度量指标如果是两个区域进行比较,Hu矩特征值为:H1 = [x1, x2, …, x7]; H2 = [y1, y2 ,…, y7];相似性度量1: value1=1−(∑71|xi−yi

2017-10-23 20:44:30 2781

原创 向量外积的应用

基本概念定义: |a x b| = |a|*|b| *sinθ 方向:右手法则,叉乘后的向量的方向与这两个向量所在的平面垂直 理解:|c|=|a×b|=|a| |b|sinθ c的长度在数值上等于以a,b夹角θ组成的平行四边形的面积应用决定点在直线的哪一侧只取数值的结果,AB × AP = |AB| * |AP| * sin∠PAB P在AB的左边,则∠PAB在0°到180°之间 sin

2017-09-26 17:45:49 2927

原创 字符集、codepages、setlocal

关于字符集UTF-8编码文本在VS中乱码解析字符集简介Unicode结构 code pageswstring与string相互转换UTF-8编码文本在VS中乱码解析windows操作系统中,Unicode字符集用UTF-16实现的,ANSI字符集是根据代码页中设置相关,默认没有用UTF-8,VS读取UTF-8编码的文本文件时,如果遇到中文,不论用string的ANS...

2017-09-26 16:51:18 1159

空空如也

空空如也

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

TA关注的人

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